

function getDutchAuctionIds()
{
	var spans = document.getElementsByTagName("SPAN");
	var len = spans.length;
	var thisSpan,myParts;
	var idList = new Array();
	var lastId = "";
	for (var i = 0; i < len; i++)
	{
		thisSpan = spans[i];
		myParts = thisSpan.className.split("_");
		if (myParts[0] == 'dutch')
		{
			// 08/09/09 dh - for detail page don't send the same item_id twice (for 2 same prices on the page)
			//idList.push(myParts[1]);
			//idList[myParts[1]] = myParts[1];
			if (myParts[1] != lastId) {
				idList.push(myParts[1]);
			}
			lastId = myParts[1];
		}
	}
	
	//idList is now complete
	return idList;
}

var xmlHttp;
function updateDutchAuctionPrices()
{
	if (xmlHttp.readyState==4 || xmlHttp.readyState=="complete")
	{ 
		var newPrices = new Object();
		// 08/09/09 dh - Prices.php now checks that there is a value to return, else returns bool false,
		// so if false (or "false") is returned then do early exit (return). 
		var responseText = xmlHttp.responseText;
		//window.status = "1_responseText"=responseText;
		if (!responseText || responseText.length < 10 || responseText == "" || responseText == "false" || responseText == false || responseText == "Undefined") {
			//alert ("responseText"=responseText);
			//window.status = "2_responseText"=responseText;
		    return false;
		}
		// 08/09/09 dh - check that response has a "|" to split on (not sure if JS will assign orig value or one element array
		// or empty/null value). 
		// once we fix up detail page there will only be a single field returned so no "|" to split on and create an array.
		// alt would be to always make sure returned string contains a "|" at end but then there would be an empty element
		// in the array created from split.
		//  
		var response = responseText.split("|");
		for (var i = 0; i < response.length; i++)
		{
			if (response[i]) {
				var temp = response[i].replace(/^\s+|\s+$/g, '').split(":");
				// recreate the css class attribute (dutch_temp[0] = item_id) and the value in the span tags (temp[1] = price)
				//newPrices["dutch_"+temp[0]] = temp[1];
				// 08/10/09 dh - added a third part to what's returned - T|F (true|false) if price has changed
				// HEY - WHAT IF the oldprice is returned, that may be even better... (I don't know)
				newPrices["dutch_"+temp[0]] = { price: temp[1], is_new: temp[2] };
			}
		}
	
		var spans = document.getElementsByTagName("SPAN");
		var len = spans.length;
		var thisSpan,myParts;
		var idList = new Array();
		var spanList = new Array();
		var logoList = new Array();
		var oldpriceElement = document.getElementById("dutchprice");
		var oldprice = "";
		if (oldpriceElement) { oldprice = "" + oldpriceElement.value; }
		//var oldprice = "";
		//var oldprice = "" + oldpriceElement.value;
		for (var i = 0; i < len; i++)
		{
			thisSpan = spans[i];
			myParts = thisSpan.className.split("_");  // this comes from the DOM
			if (myParts[0] == 'dutch')
			{
				//newprice = newPrices[thisSpan.className];  // this (newPrices) comes from code above, from ajax callback
				newprice = newPrices[thisSpan.className].price;  // this (newPrices) comes from code above, from ajax callback
				//oldprice = thisSpan.innerHTML;  // old/existing price on the page right now
				if (!newprice || newprice == "Undefined")
				{
					// if price not found assume the item has expired and memcache/Prices.php didn't get any data
					// NOTE - 4/18/09 dh - ALT would be to not change the price, then if user goes to DETAIL page,
					// we can notify them that the item is expired.
					// do nothing
					// later on... Peter says that we *should* show $expired
					if (oldprice != "" && oldprice != "refresh") {
						thisSpan.innerHTML = oldprice;
					} else {
						thisSpan.innerHTML = "Refreshing";
					}
				}
				else if (newprice != '')
				{
					// only change price if diff value than what's already displayed
					if (oldprice != newprice || thisSpan.innerHTML != newprice)
					{
						if (newprice == "refresh") {
							thisSpan.innerHTML = oldprice;
						} else {
							thisSpan.innerHTML = newprice;
							if (oldpriceElement) { oldpriceElement.value = newprice; }
							if (newPrices[thisSpan.className].is_new == "T") {
								spanList.push(thisSpan);
								if (document.getElementById("dutchlogo_"+myParts[1])) {
									logoList.push(document.getElementById("dutchlogo_"+myParts[1]));
								}
							}
						}
					}
				}
			}
		}

		// animate changed prices
		if (spanList.length > 0)
		{
			//$(spanList).animate({backgroundColor: 'white'},300).animate({backgroundColor: 'orange'},300).animate({backgroundColor: 'white'},300);
			$(spanList).addClass("blinking", 1000).removeClass("blinking");
		}
	}
}

function doPriceCheck()
{
 	xmlHttp=GetXmlHttpObject();
	if (xmlHttp==null)
	{
		return;
	}
	
	var idList = getDutchAuctionIds();
	if (idList.length > 0)
	{
		var url = "http://www.pricefalls.com/get_dutch_prices.php?ids=" + idList.join(",") + "&rand=" + Math.random().toString();
		
		xmlHttp.onreadystatechange=updateDutchAuctionPrices;
		xmlHttp.open("GET",url,true);
		xmlHttp.send(null);
	}
}
function GetXmlHttpObject()
{ 
	var objXMLHttp=null;
	if (window.XMLHttpRequest)
	{
		objXMLHttp=new XMLHttpRequest();
	}
	else if (window.ActiveXObject)
	{
		objXMLHttp=new ActiveXObject("Microsoft.XMLHTTP");
	}
	return objXMLHttp;
} 

/*
function ShowFallingPrices()
{
	doPriceCheck();
	setInterval("doPriceCheck()", 15000);
}
*/

/**
 * ajaxpost - ajax post form for "doodads" (css popover forms to collect user data); when submit button is clicked, calls this
 *		script which will do ajax post of the form to a php script for processing (like insert/update database record), then 
 *  	the only thing typcially returned here (to callback) will be an ok|fail status (for example, the record was inserted ok or not).
 *      we can optionally show a message, like "record inserted", pause for 1 second (or 500ms) then clear/remove the form/popup dialog,
 *		or for status=fail give an error message and allow user to make corrections and submit again.
 *
 * history:
 * 11/08/09 - written by david hall (davidhall@mindspring.com) 
 *
 */
function ajaxpost() {}

ajaxpost.prototype = {

	xhr:		  {}, // httpXmlRequest object reference
	pagename: 	  "", // page name of caller (the doodad file or ref name)
	formname:     "", // name of form, fetched from 'cxt' param which is 'this' in caller
	query_string: "", // query string (part after "?" in url)
	//handler:      "/_testserver_/ajaxhandler.php",  // script to call to process request, returns status (ok|fail) to callback
	handler:      "/ajaxhandler.php",  // script to call to process request, returns status (ok|fail) to callback
	
	init: function(pagename, formname, opts) {
		// setup for a "doodad" form - usage: <input type="button" ... onClick="ajaxpost.init(this);" />
		//this.formname = cxt.form.name; // param 'cxt' (context) is 'this' in the caller
		//if (console) console.log("ajaxpost::init::args:pagename="+pagename+" formname="+formname+" opts="+opts);
		this.xhr = null;
		if (window.XMLHttpRequest) {
			this.xhr = new XMLHttpRequest();
		} else if (window.ActiveXObject) {
			this.xhr = new ActiveXObject("Microsoft.XMLHTTP");
		}

		if (this.xhr != null) {
			this.setup_post(pagename, formname, opts);
			this.xhr.open("POST", this.handler, true); // we may have to set this a SYNC not async if the popup closes upon submit - we want a status first
			this.xhr.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
			this.xhr.setRequestHeader("Content-length", this.query_string.length);
			this.xhr.setRequestHeader("Connection", "close");
			this.xhr.onreadystatechange = this.callback_handler;
			this.xhr.send(this.query_string);
		}
	},
	
	callback_handler: function() {
		// callback function to handle the XHR Response
		if (this.readyState == 4 || this.readyState == "complete") { 
			var responseText = this.responseText;
			if (responseText.length > 0) {
				var response = responseText.split("|");
				var stat = response[0]; // status = ok|fail
				var mesg = response[1]; // message
				//document.getElementById('message').innerHTML += "<br/>3)callback_handler: stat="+stat+" mesg="+mesg;
				//alert("response="+response+" stat="+stat+" mesg="+mesg);

				//console.log("response="+response);
				// store stat:mesg in a closure to retrieve by caller after init done
				//var val = stat+":"+mesg;
				//message_handler = function() {
					//return val;
				//}
				stat = stat.trim();
				mesg = mesg.trim();
				saveMessage(stat, mesg);
				
				//document.getElementById('message').innerHTML = mesg;
				if (document.getElementById('message')) {
					//document.getElementById('message').innerHTML = stat+":"+mesg;
				}
				if (document.getElementById('astatus')) {
					//document.getElementById('astatus').value = stat;
				}
				if (stat == "ok") {
					//sleep(1);
					//window.close();
			   		//<div id="content" style="display: block;">
			        //<div id="returnMsg" style="display: none;">
					if (document.getElementById('content')) {
						document.getElementById('content').style.display="none";
					}
					if (document.getElementById('returnMsg')) {
						document.getElementById('returnMsg').style.display="block";
					}
				} else {
					// else there was an error - user can fix it then click submit button again
				}
			}
			return stat;
		}
	},
	
	setup_post: function(pagename, formname, opts) {
		// set up query string from form elements
		var args;
		//var formname = this.formname;
		//args = "pagename=" + formname; // save the form name as the 'pagename' value (used in php to determine code to use)
		args = "pagename=" + pagename; // save the form name as the 'pagename' value (used in php to determine code to use)
		//document.getElementById('message').innerHTML += " <br/>1)setup_post: formname=" + formname + " args=" + args;
		if (formname != "NOT_USED") {
			var els = document.forms[formname].elements;
			var len = els.length;
		
			for (var i=0; i < len; i++) {
				var name = els[i].name;
				var value = fixedEncodeURIComponent(els[i].value);
				args += "&" + name + "=" + value + "";
			}
		}
		if (opts && opts.length > 0) {
			args += opts;
		}
		this.query_string = args;
		//if (console) console.log("ajaxpost::setup_post::args:pagename="+pagename+" formname="+formname+" opts="+opts+" args="+args);
		//document.getElementById('message').innerHTML += " <br/>2)setup_post: this.query_string=" + this.query_string;
	}

}
var ajaxpost = new ajaxpost();

// function from https://developer.mozilla.org/En/Core_JavaScript_1.5_Reference:Global_Functions:encodeURIComponent
function fixedEncodeURIComponent(str) {
	return encodeURIComponent(str).replace(/!/g, '%21').replace(/'/g, '%27').replace(/\(/g, '%28').replace(/\)/g, '%29').replace(/\*/g, '%2A');
}

function saveMessage(s, m) {
	//var message = s.trim()+":"+m.trim();
	var message = s+":"+m;
	savedMessage = function() {
		return message;
	}
}

Function.prototype.method = function(name, func) {
	this.prototype[name] = func;
	return this;
};

String.method('trim', function() {
	return this.replace(/^\s+|\s+$/g, '');
});


/* http://keith-wood.name/countdown.html
   Countdown for jQuery v1.5.5.
   Written by Keith Wood (kbwood{at}iinet.com.au) January 2008.
   Dual licensed under the GPL (http://dev.jquery.com/browser/trunk/jquery/GPL-LICENSE.txt) and 
   MIT (http://dev.jquery.com/browser/trunk/jquery/MIT-LICENSE.txt) licenses. 
   Please attribute the author if you use it. */

/* Display a countdown timer.
   Attach it with options like:
   $('div selector').countdown(
       {until: new Date(2009, 1 - 1, 1, 0, 0, 0), onExpiry: happyNewYear}); */

(function($) { // Hide scope, no $ conflict

/* Countdown manager. */
function Countdown() {
	this.regional = []; // Available regional settings, indexed by language code
	this.regional[''] = { // Default regional settings
		// The display texts for the counters
		labels: ['Years', 'Months', 'Weeks', 'Days', 'Hours', 'Minutes', 'Seconds'],
		// The display texts for the counters if only one
		labels1: ['Year', 'Month', 'Week', 'Day', 'Hour', 'Minute', 'Second'],
		compactLabels: ['y', 'm', 'w', 'd'], // The compact texts for the counters
		timeSeparator: ':', // Separator for time periods
		isRTL: false // True for right-to-left languages, false for left-to-right
	};
	this._defaults = {
		until: null, // new Date(year, mth - 1, day, hr, min, sec) - date/time to count down to
			// or numeric for seconds offset, or string for unit offset(s):
			// 'Y' years, 'O' months, 'W' weeks, 'D' days, 'H' hours, 'M' minutes, 'S' seconds
		since: null, // new Date(year, mth - 1, day, hr, min, sec) - date/time to count up from
			// or numeric for seconds offset, or string for unit offset(s):
			// 'Y' years, 'O' months, 'W' weeks, 'D' days, 'H' hours, 'M' minutes, 'S' seconds
		timezone: null, // The timezone (hours or minutes from GMT) for the target times,
			// or null for client local
		serverSync: null, // A function to retrieve the current server time for synchronisation
		format: 'dHMS', // Format for display - upper case for always, lower case only if non-zero,
			// 'Y' years, 'O' months, 'W' weeks, 'D' days, 'H' hours, 'M' minutes, 'S' seconds
		layout: '', // Build your own layout for the countdown
		compact: false, // True to display in a compact format, false for an expanded one
		description: '', // The description displayed for the countdown
		expiryUrl: '', // A URL to load upon expiry, replacing the current page
		expiryText: '', // Text to display upon expiry, replacing the countdown
		alwaysExpire: false, // True to trigger onExpiry even if never counted down
		onExpiry: null, // Callback when the countdown expires -
			// receives no parameters and 'this' is the containing division
		onTick: null // Callback when the countdown is updated -
			// receives int[7] being the breakdown by period (based on format)
			// and 'this' is the containing division
	};
	$.extend(this._defaults, this.regional['']);
}

var PROP_NAME = 'countdown';

var Y = 0; // Years
var O = 1; // Months
var W = 2; // Weeks
var D = 3; // Days
var H = 4; // Hours
var M = 5; // Minutes
var S = 6; // Seconds

$.extend(Countdown.prototype, {
	/* Class name added to elements to indicate already configured with countdown. */
	markerClassName: 'hasCountdown',
	
	/* Shared timer for all countdowns. */
	_timer: setInterval(function() { $.countdown._updateTargets(); }, 980),
	/* List of currently active countdown targets. */
	_timerTargets: [],
	
	/* Override the default settings for all instances of the countdown widget.
	   @param  options  (object) the new settings to use as defaults */
	setDefaults: function(options) {
		this._resetExtraLabels(this._defaults, options);
		extendRemove(this._defaults, options || {});
	},

	/* Convert a date/time to UTC.
	   @param  tz     (number) the hour or minute offset from GMT, e.g. +9, -360
	   @param  year   (Date) the date/time in that timezone or
	                  (number) the year in that timezone
	   @param  month  (number, optional) the month (0 - 11) (omit if year is a Date)
	   @param  day    (number, optional) the day (omit if year is a Date)
	   @param  hours  (number, optional) the hour (omit if year is a Date)
	   @param  mins   (number, optional) the minute (omit if year is a Date)
	   @param  secs   (number, optional) the second (omit if year is a Date)
	   @param  ms     (number, optional) the millisecond (omit if year is a Date)
	   @return  (Date) the equivalent UTC date/time */
	UTCDate: function(tz, year, month, day, hours, mins, secs, ms) {
		if (typeof year == 'object' && year.constructor == Date) {
			ms = year.getMilliseconds();
			secs = year.getSeconds();
			mins = year.getMinutes();
			hours = year.getHours();
			day = year.getDate();
			month = year.getMonth();
			year = year.getFullYear();
		}
		var d = new Date();
		d.setUTCFullYear(year);
		d.setUTCDate(1);
		d.setUTCMonth(month || 0);
		d.setUTCDate(day || 1);
		d.setUTCHours(hours || 0);
		d.setUTCMinutes((mins || 0) - (Math.abs(tz) < 30 ? tz * 60 : tz));
		d.setUTCSeconds(secs || 0);
		d.setUTCMilliseconds(ms || 0);
		return d;
	},

	/* Retrieve one or more settings values.
	   @param  name  (string, optional) the name of the setting to retrieve
	                 or 'all' for all instance settings or omit for all default settings
	   @return  (any) the requested setting(s) */
	_settingsCountdown: function(target, name) {
		if (!name) {
			return $.countdown._defaults;
		}
		var inst = $.data(target, PROP_NAME);
		return (name == 'all' ? inst.options : inst.options[name]);
	},

	/* Attach the countdown widget to a div.
	   @param  target   (element) the containing division
	   @param  options  (object) the initial settings for the countdown */
	_attachCountdown: function(target, options) {
		var $target = $(target);
		if ($target.hasClass(this.markerClassName)) {
			return;
		}
		$target.addClass(this.markerClassName);
		var inst = {options: $.extend({}, options),
			_periods: [0, 0, 0, 0, 0, 0, 0]};
		$.data(target, PROP_NAME, inst);
		this._changeCountdown(target);
	},

	/* Add a target to the list of active ones.
	   @param  target  (element) the countdown target */
	_addTarget: function(target) {
		if (!this._hasTarget(target)) {
			this._timerTargets.push(target);
		}
	},

	/* See if a target is in the list of active ones.
	   @param  target  (element) the countdown target
	   @return  (boolean) true if present, false if not */
	_hasTarget: function(target) {
		return ($.inArray(target, this._timerTargets) > -1);
	},

	/* Remove a target from the list of active ones.
	   @param  target  (element) the countdown target */
	_removeTarget: function(target) {
		this._timerTargets = $.map(this._timerTargets,
			function(value) { return (value == target ? null : value); }); // delete entry
	},

	/* Update each active timer target. */
	_updateTargets: function() {
		for (var i = 0; i < this._timerTargets.length; i++) {
			this._updateCountdown(this._timerTargets[i]);
		}
	},

	/* Redisplay the countdown with an updated display.
	   @param  target  (jQuery) the containing division
	   @param  inst    (object) the current settings for this instance */
	_updateCountdown: function(target, inst) {
		var $target = $(target);
		inst = inst || $.data(target, PROP_NAME);
		if (!inst) {
			return;
		}
		$target.html(this._generateHTML(inst));
		$target[(this._get(inst, 'isRTL') ? 'add' : 'remove') + 'Class']('countdown_rtl');
		var onTick = this._get(inst, 'onTick');
		if (onTick) {
			onTick.apply(target, [inst._hold != 'lap' ? inst._periods :
				this._calculatePeriods(inst, inst._show, new Date())]);
		}
		var expired = inst._hold != 'pause' &&
			(inst._since ? inst._now.getTime() <= inst._since.getTime() :
			inst._now.getTime() >= inst._until.getTime());
		if (expired && !inst._expiring) {
			inst._expiring = true;
			if (this._hasTarget(target) || this._get(inst, 'alwaysExpire')) {
				this._removeTarget(target);
				var onExpiry = this._get(inst, 'onExpiry');
				if (onExpiry) {
					onExpiry.apply(target, []);
				}
				var expiryText = this._get(inst, 'expiryText');
				if (expiryText) {
					var layout = this._get(inst, 'layout');
					inst.options.layout = expiryText;
					this._updateCountdown(target, inst);
					inst.options.layout = layout;
				}
				var expiryUrl = this._get(inst, 'expiryUrl');
				if (expiryUrl) {
					window.location = expiryUrl;
				}
			}
			inst._expiring = false;
		}
		else if (inst._hold == 'pause') {
			this._removeTarget(target);
		}
		$.data(target, PROP_NAME, inst);
	},

	/* Reconfigure the settings for a countdown div.
	   @param  target   (element) the containing division
	   @param  options  (object) the new settings for the countdown or
	                    (string) an individual property name
	   @param  value    (any) the individual property value
	                    (omit if options is an object) */
	_changeCountdown: function(target, options, value) {
		options = options || {};
		if (typeof options == 'string') {
			var name = options;
			options = {};
			options[name] = value;
		}
		var inst = $.data(target, PROP_NAME);
		if (inst) {
			this._resetExtraLabels(inst.options, options);
			extendRemove(inst.options, options);
			this._adjustSettings(target, inst);
			$.data(target, PROP_NAME, inst);
			var now = new Date();
			if ((inst._since && inst._since < now) ||
					(inst._until && inst._until > now)) {
				this._addTarget(target);
			}
			this._updateCountdown(target, inst);
		}
	},

	/* Reset any extra labelsn and compactLabelsn entries if changing labels.
	   @param  base     (object) the options to be updated
	   @param  options  (object) the new option values */
	_resetExtraLabels: function(base, options) {
		var changingLabels = false;
		for (var n in options) {
			if (n.match(/[Ll]abels/)) {
				changingLabels = true;
				break;
			}
		}
		if (changingLabels) {
			for (var n in base) { // Remove custom numbered labels
				if (n.match(/[Ll]abels[0-9]/)) {
					base[n] = null;
				}
			}
		}
	},
	
	/* Calculate interal settings for an instance.
	   @param  target  (element) the containing division
	   @param  inst    (object) the current settings for this instance */
	_adjustSettings: function(target, inst) {
		var serverSync = this._get(inst, 'serverSync');
		serverSync = (serverSync ? serverSync.apply(target, []) : null);
		var now = new Date();
		var timezone = this._get(inst, 'timezone');
		timezone = (timezone == null ? -now.getTimezoneOffset() : timezone);
		inst._since = this._get(inst, 'since');
		if (inst._since) {
			inst._since = this.UTCDate(timezone, this._determineTime(inst._since, null));
			if (inst._since && serverSync) {
				inst._since.setMilliseconds(inst._since.getMilliseconds() +
					now.getTime() - serverSync.getTime());
			}
		}
		inst._until = this.UTCDate(timezone, this._determineTime(this._get(inst, 'until'), now));
		if (serverSync) {
			inst._until.setMilliseconds(inst._until.getMilliseconds() +
				now.getTime() - serverSync.getTime());
		}
		inst._show = this._determineShow(inst);
	},

	/* Remove the countdown widget from a div.
	   @param  target  (element) the containing division */
	_destroyCountdown: function(target) {
		var $target = $(target);
		if (!$target.hasClass(this.markerClassName)) {
			return;
		}
		this._removeTarget(target);
		$target.removeClass(this.markerClassName).empty();
		$.removeData(target, PROP_NAME);
	},

	/* Pause a countdown widget at the current time.
	   Stop it running but remember and display the current time.
	   @param  target  (element) the containing division */
	_pauseCountdown: function(target) {
		this._hold(target, 'pause');
	},

	/* Pause a countdown widget at the current time.
	   Stop the display but keep the countdown running.
	   @param  target  (element) the containing division */
	_lapCountdown: function(target) {
		this._hold(target, 'lap');
	},

	/* Resume a paused countdown widget.
	   @param  target  (element) the containing division */
	_resumeCountdown: function(target) {
		this._hold(target, null);
	},

	/* Pause or resume a countdown widget.
	   @param  target  (element) the containing division
	   @param  hold    (string) the new hold setting */
	_hold: function(target, hold) {
		var inst = $.data(target, PROP_NAME);
		if (inst) {
			if (inst._hold == 'pause' && !hold) {
				inst._periods = inst._savePeriods;
				var sign = (inst._since ? '-' : '+');
				inst[inst._since ? '_since' : '_until'] =
					this._determineTime(sign + inst._periods[0] + 'y' +
						sign + inst._periods[1] + 'o' + sign + inst._periods[2] + 'w' +
						sign + inst._periods[3] + 'd' + sign + inst._periods[4] + 'h' + 
						sign + inst._periods[5] + 'm' + sign + inst._periods[6] + 's');
				this._addTarget(target);
			}
			inst._hold = hold;
			inst._savePeriods = (hold == 'pause' ? inst._periods : null);
			$.data(target, PROP_NAME, inst);
			this._updateCountdown(target, inst);
		}
	},

	/* Return the current time periods.
	   @param  target  (element) the containing division
	   @return  (number[7]) the current periods for the countdown */
	_getTimesCountdown: function(target) {
		var inst = $.data(target, PROP_NAME);
		return (!inst ? null : (!inst._hold ? inst._periods :
			this._calculatePeriods(inst, inst._show, new Date())));
	},

	/* Get a setting value, defaulting if necessary.
	   @param  inst  (object) the current settings for this instance
	   @param  name  (string) the name of the required setting
	   @return  (any) the setting's value or a default if not overridden */
	_get: function(inst, name) {
		return (inst.options[name] != null ?
			inst.options[name] : $.countdown._defaults[name]);
	},

	/* A time may be specified as an exact value or a relative one.
	   @param  setting      (string or number or Date) - the date/time value
	                        as a relative or absolute value
	   @param  defaultTime  (Date) the date/time to use if no other is supplied
	   @return  (Date) the corresponding date/time */
	_determineTime: function(setting, defaultTime) {
		var offsetNumeric = function(offset) { // e.g. +300, -2
			var time = new Date();
			time.setTime(time.getTime() + offset * 1000);
			return time;
		};
		var offsetString = function(offset) { // e.g. '+2d', '-4w', '+3h +30m'
			offset = offset.toLowerCase();
			var time = new Date();
			var year = time.getFullYear();
			var month = time.getMonth();
			var day = time.getDate();
			var hour = time.getHours();
			var minute = time.getMinutes();
			var second = time.getSeconds();
			var pattern = /([+-]?[0-9]+)\s*(s|m|h|d|w|o|y)?/g;
			var matches = pattern.exec(offset);
			while (matches) {
				switch (matches[2] || 's') {
					case 's': second += parseInt(matches[1], 10); break;
					case 'm': minute += parseInt(matches[1], 10); break;
					case 'h': hour += parseInt(matches[1], 10); break;
					case 'd': day += parseInt(matches[1], 10); break;
					case 'w': day += parseInt(matches[1], 10) * 7; break;
					case 'o':
						month += parseInt(matches[1], 10); 
						day = Math.min(day, $.countdown._getDaysInMonth(year, month));
						break;
					case 'y':
						year += parseInt(matches[1], 10);
						day = Math.min(day, $.countdown._getDaysInMonth(year, month));
						break;
				}
				matches = pattern.exec(offset);
			}
			return new Date(year, month, day, hour, minute, second, 0);
		};
		var time = (setting == null ? defaultTime :
			(typeof setting == 'string' ? offsetString(setting) :
			(typeof setting == 'number' ? offsetNumeric(setting) : setting)));
		if (time) time.setMilliseconds(0);
		return time;
	},

	/* Determine the number of days in a month.
	   @param  year   (number) the year
	   @param  month  (number) the month
	   @return  (number) the days in that month */
	_getDaysInMonth: function(year, month) {
		return 32 - new Date(year, month, 32).getDate();
	},

	/* Generate the HTML to display the countdown widget.
	   @param  inst  (object) the current settings for this instance
	   @return  (string) the new HTML for the countdown display */
	_generateHTML: function(inst) {
		// Determine what to show
		inst._periods = periods = (inst._hold ? inst._periods :
			this._calculatePeriods(inst, inst._show, new Date()));
		// Show all 'asNeeded' after first non-zero value
		var shownNonZero = false;
		var showCount = 0;
		for (var period = 0; period < inst._show.length; period++) {
			shownNonZero |= (inst._show[period] == '?' && periods[period] > 0);
			inst._show[period] = (inst._show[period] == '?' && !shownNonZero ? null : inst._show[period]);
			showCount += (inst._show[period] ? 1 : 0);
		}
		var compact = this._get(inst, 'compact');
		var layout = this._get(inst, 'layout');
		var labels = (compact ? this._get(inst, 'compactLabels') : this._get(inst, 'labels'));
		var timeSeparator = this._get(inst, 'timeSeparator');
		var description = this._get(inst, 'description') || '';
		var showCompact = function(period) {
			var labelsNum = $.countdown._get(inst, 'compactLabels' + periods[period]);
			return (inst._show[period] ? periods[period] +
				(labelsNum ? labelsNum[period] : labels[period]) + ' ' : '');
		};
		var showFull = function(period) {
			var labelsNum = $.countdown._get(inst, 'labels' + periods[period]);
			return (inst._show[period] ?
				'<span class="countdown_section"><span class="countdown_amount">' +
				periods[period] + '</span><br/>' +
				(labelsNum ? labelsNum[period] : labels[period]) + '</span>' : '');
		};
		return (layout ? this._buildLayout(inst, layout, compact) :
			((compact ? // Compact version
			'<span class="countdown_row countdown_amount' +
			(inst._hold ? ' countdown_holding' : '') + '">' + 
			showCompact(Y) + showCompact(O) + showCompact(W) + showCompact(D) + 
			(inst._show[H] ? this._minDigits(periods[H], 2) : '') +
			(inst._show[M] ? (inst._show[H] ? timeSeparator : '') +
			this._minDigits(periods[M], 2) : '') +
			(inst._show[S] ? (inst._show[H] || inst._show[M] ? timeSeparator : '') +
			this._minDigits(periods[S], 2) : '') :
			// Full version
			'<span class="countdown_row countdown_show' + showCount +
			(inst._hold ? ' countdown_holding' : '') + '">' +
			showFull(Y) + showFull(O) + showFull(W) + showFull(D) +
			showFull(H) + showFull(M) + showFull(S)) + '</span>' +
			(description ? '<span class="countdown_row countdown_descr">' + description + '</span>' : '')));
	},

	/* Construct a custom layout.
	   @param  inst     (object) the current settings for this instance
	   @param  layout   (string) the customised layout
	   @param  compact  (boolean) true if using compact labels
	   @return  (string) the custom HTML */
	_buildLayout: function(inst, layout, compact) {
		var labels = this._get(inst, (compact ? 'compactLabels' : 'labels'));
		var labelFor = function(index) {
			return ($.countdown._get(inst,
				(compact ? 'compactLabels' : 'labels') + inst._periods[index]) ||
				labels)[index];
		};
		var digit = function(value, position) {
			return Math.floor(value / position) % 10;
		};
		var subs = {desc: this._get(inst, 'description'), sep: this._get(inst, 'timeSeparator'),
			yl: labelFor(Y), yn: inst._periods[Y], ynn: this._minDigits(inst._periods[Y], 2),
			ynnn: this._minDigits(inst._periods[Y], 3), y1: digit(inst._periods[Y], 1),
			y10: digit(inst._periods[Y], 10), y100: digit(inst._periods[Y], 100),
			y1000: digit(inst._periods[Y], 1000),
			ol: labelFor(O), on: inst._periods[O], onn: this._minDigits(inst._periods[O], 2),
			onnn: this._minDigits(inst._periods[O], 3), o1: digit(inst._periods[O], 1),
			o10: digit(inst._periods[O], 10), o100: digit(inst._periods[O], 100),
			o1000: digit(inst._periods[O], 1000),
			wl: labelFor(W), wn: inst._periods[W], wnn: this._minDigits(inst._periods[W], 2),
			wnnn: this._minDigits(inst._periods[W], 3), w1: digit(inst._periods[W], 1),
			w10: digit(inst._periods[W], 10), w100: digit(inst._periods[W], 100),
			w1000: digit(inst._periods[W], 1000),
			dl: labelFor(D), dn: inst._periods[D], dnn: this._minDigits(inst._periods[D], 2),
			dnnn: this._minDigits(inst._periods[D], 3), d1: digit(inst._periods[D], 1),
			d10: digit(inst._periods[D], 10), d100: digit(inst._periods[D], 100),
			d1000: digit(inst._periods[D], 1000),
			hl: labelFor(H), hn: inst._periods[H], hnn: this._minDigits(inst._periods[H], 2),
			hnnn: this._minDigits(inst._periods[H], 3), h1: digit(inst._periods[H], 1),
			h10: digit(inst._periods[H], 10), h100: digit(inst._periods[H], 100),
			h1000: digit(inst._periods[H], 1000),
			ml: labelFor(M), mn: inst._periods[M], mnn: this._minDigits(inst._periods[M], 2),
			mnnn: this._minDigits(inst._periods[M], 3), m1: digit(inst._periods[M], 1),
			m10: digit(inst._periods[M], 10), m100: digit(inst._periods[M], 100),
			m1000: digit(inst._periods[M], 1000),
			sl: labelFor(S), sn: inst._periods[S], snn: this._minDigits(inst._periods[S], 2),
			snnn: this._minDigits(inst._periods[S], 3), s1: digit(inst._periods[S], 1),
			s10: digit(inst._periods[S], 10), s100: digit(inst._periods[S], 100),
			s1000: digit(inst._periods[S], 1000)};
		var html = layout;
		// Replace period containers: {p<}...{p>}
		for (var i = 0; i < 7; i++) {
			var period = 'yowdhms'.charAt(i);
			var re = new RegExp('\\{' + period + '<\\}(.*)\\{' + period + '>\\}', 'g');
			html = html.replace(re, (inst._show[i] ? '$1' : ''));
		}
		// Replace period values: {pn}
		$.each(subs, function(n, v) {
			var re = new RegExp('\\{' + n + '\\}', 'g');
			html = html.replace(re, v);
		});
		return html;
	},

	/* Ensure a numeric value has at least n digits for display.
	   @param  value  (number) the value to display
	   @param  len    (number) the minimum length
	   @return  (string) the display text */
	_minDigits: function(value, len) {
		value = '' + value;
		if (value.length >= len) {
			return value;
		}
		value = '0000000000' + value;
		return value.substr(value.length - len);
	},

	/* Translate the format into flags for each period.
	   @param  inst  (object) the current settings for this instance
	   @return  (string[7]) flags indicating which periods are requested (?) or
	            required (!) by year, month, week, day, hour, minute, second */
	_determineShow: function(inst) {
		var format = this._get(inst, 'format');
		var show = [];
		show[Y] = (format.match('y') ? '?' : (format.match('Y') ? '!' : null));
		show[O] = (format.match('o') ? '?' : (format.match('O') ? '!' : null));
		show[W] = (format.match('w') ? '?' : (format.match('W') ? '!' : null));
		show[D] = (format.match('d') ? '?' : (format.match('D') ? '!' : null));
		show[H] = (format.match('h') ? '?' : (format.match('H') ? '!' : null));
		show[M] = (format.match('m') ? '?' : (format.match('M') ? '!' : null));
		show[S] = (format.match('s') ? '?' : (format.match('S') ? '!' : null));
		return show;
	},
	
	/* Calculate the requested periods between now and the target time.
	   @param  inst  (object) the current settings for this instance
	   @param  show  (string[7]) flags indicating which periods are requested/required
	   @param  now   (Date) the current date and time
	   @return  (number[7]) the current time periods (always positive)
	            by year, month, week, day, hour, minute, second */
	_calculatePeriods: function(inst, show, now) {
		// Find endpoints
		inst._now = now;
		inst._now.setMilliseconds(0);
		var until = new Date(inst._now.getTime());
		if (inst._since) {
			if (now.getTime() < inst._since.getTime()) {
				inst._now = now = until;
			}
			else {
				now = inst._since;
			}
		}
		else {
			until.setTime(inst._until.getTime());
			if (now.getTime() > inst._until.getTime()) {
				inst._now = now = until;
			}
		}
		// Calculate differences by period
		var periods = [0, 0, 0, 0, 0, 0, 0];
		if (show[Y] || show[O]) {
			// Treat end of months as the same
			var lastNow = $.countdown._getDaysInMonth(now.getFullYear(), now.getMonth());
			var lastUntil = $.countdown._getDaysInMonth(until.getFullYear(), until.getMonth());
			var sameDay = (until.getDate() == now.getDate() ||
				(until.getDate() >= Math.min(lastNow, lastUntil) &&
				now.getDate() >= Math.min(lastNow, lastUntil)));
			var getSecs = function(date) {
				return (date.getHours() * 60 + date.getMinutes()) * 60 + date.getSeconds();
			};
			var months = Math.max(0,
				(until.getFullYear() - now.getFullYear()) * 12 + until.getMonth() - now.getMonth() +
				((until.getDate() < now.getDate() && !sameDay) ||
				(sameDay && getSecs(until) < getSecs(now)) ? -1 : 0));
			periods[Y] = (show[Y] ? Math.floor(months / 12) : 0);
			periods[O] = (show[O] ? months - periods[Y] * 12 : 0);
			// Adjust for months difference and end of month if necessary
			var adjustDate = function(date, offset, last) {
				var wasLastDay = (date.getDate() == last);
				var lastDay = $.countdown._getDaysInMonth(date.getFullYear() + offset * periods[Y],
					date.getMonth() + offset * periods[O]);
				if (date.getDate() > lastDay) {
					date.setDate(lastDay);
				}
				date.setFullYear(date.getFullYear() + offset * periods[Y]);
				date.setMonth(date.getMonth() + offset * periods[O]);
				if (wasLastDay) {
					date.setDate(lastDay);
				}
				return date;
			};
			if (inst._since) {
				until = adjustDate(until, -1, lastUntil);
			}
			else {
				now = adjustDate(new Date(now.getTime()), +1, lastNow);
			}
		}
		var diff = Math.floor((until.getTime() - now.getTime()) / 1000);
		var extractPeriod = function(period, numSecs) {
			periods[period] = (show[period] ? Math.floor(diff / numSecs) : 0);
			diff -= periods[period] * numSecs;
		};
		extractPeriod(W, 604800);
		extractPeriod(D, 86400);
		extractPeriod(H, 3600);
		extractPeriod(M, 60);
		extractPeriod(S, 1);
		if (diff > 0 && !inst._since) { // Round up if left overs
			var multiplier = [1, 12, 4.3482, 7, 24, 60, 60];
			var lastShown = S;
			var max = 1;
			for (var period = S; period >= Y; period--) {
				if (show[period]) {
					if (periods[lastShown] >= max) {
						periods[lastShown] = 0;
						diff = 1;
					}
					if (diff > 0) {
						periods[period]++;
						diff = 0;
						lastShown = period;
						max = 1;
					}
				}
				max *= multiplier[period];
			}
		}
		return periods;
	}
});

/* jQuery extend now ignores nulls!
   @param  target  (object) the object to update
   @param  props   (object) the new settings
   @return  (object) the updated object */
function extendRemove(target, props) {
	$.extend(target, props);
	for (var name in props) {
		if (props[name] == null) {
			target[name] = null;
		}
	}
	return target;
}

/* Process the countdown functionality for a jQuery selection.
   @param  command  (string) the command to run (optional, default 'attach')
   @param  options  (object) the new settings to use for these countdown instances
   @return  (jQuery) for chaining further calls */
$.fn.countdown = function(options) {
	var otherArgs = Array.prototype.slice.call(arguments, 1);
	if (options == 'getTimes' || options == 'settings') {
		return $.countdown['_' + options + 'Countdown'].
			apply($.countdown, [this[0]].concat(otherArgs));
	}
	return this.each(function() {
		if (typeof options == 'string') {
			$.countdown['_' + options + 'Countdown'].apply($.countdown, [this].concat(otherArgs));
		}
		else {
			$.countdown._attachCountdown(this, options);
		}
	});
};

/* Initialise the countdown functionality. */
$.countdown = new Countdown(); // singleton instance

})(jQuery);


/*
 * FancyBox - jQuery Plugin
 * simple and fancy lightbox alternative
 *
 * Copyright (c) 2009 Janis Skarnelis
 * Examples and documentation at: http://fancybox.net
 * 
 * Version: 1.2.6 (16/11/2009)
 * Requires: jQuery v1.3+
 * 
 * Dual licensed under the MIT and GPL licenses:
 *   http://www.opensource.org/licenses/mit-license.php
 *   http://www.gnu.org/licenses/gpl.html
 */
 
;eval(function(p,a,c,k,e,r){e=function(c){return(c<a?'':e(parseInt(c/a)))+((c=c%a)>35?String.fromCharCode(c+29):c.toString(36))};if(!''.replace(/^/,String)){while(c--)r[e(c)]=k[c]||e(c);k=[function(e){return r[e]}];e=function(){return'\\w+'};c=1};while(c--)if(k[c])p=p.replace(new RegExp('\\b'+e(c)+'\\b','g'),k[c]);return p}(';(p($){$.q.1Q=p(){J O.2n(p(){n b=$(O).u(\'2o\');8(b.1d(/^3i\\(["\']?(.*\\.2p)["\']?\\)$/i)){b=3j.$1;$(O).u({\'2o\':\'3k\',\'1e\':"3l:3m.3n.3o(3p=D, 3q="+($(O).u(\'3r\')==\'2q-3s\'?\'3t\':\'3u\')+", 13=\'"+b+"\')"}).2n(p(){n a=$(O).u(\'1u\');8(a!=\'2r\'&&a!=\'2s\')$(O).u(\'1u\',\'2s\')})}})};n l,4,1f=F,X=1v 1w,1x,1y=1,1z=/\\.(3v|3w|2p|3x|3y)(.*)?$/i;n m=1A,18=$.14.1g&&$.14.2t.1R(0,1)==6&&!19.3z,1S=18||($.14.1g&&$.14.2t.1R(0,1)==7);$.q.r=p(o){n j=$.2u({},$.q.r.2v,o);n k=O;p 2w(){l=O;4=$.2u({},j);2x();J F};p 2x(){8(1f)J;8($.1T(4.1U)){4.1U()}4.v=[];4.t=0;8(j.v.Y>0){4.v=j.v}C{n a={};8(!l.1B||l.1B==\'\'){n a={K:l.K,G:l.G};8($(l).1C("1l:1D").Y){a.S=$(l).1C("1l:1D")}C{a.S=$(l)}8(a.G==\'\'||1V a.G==\'1m\'){a.G=a.S.2y(\'1W\')}4.v.2z(a)}C{n b=$(k).1e("a[1B="+l.1B+"]");n a={};3A(n i=0;i<b.Y;i++){a={K:b[i].K,G:b[i].G};8($(b[i]).1C("1l:1D").Y){a.S=$(b[i]).1C("1l:1D")}C{a.S=$(b[i])}8(a.G==\'\'||1V a.G==\'1m\'){a.G=a.S.2y(\'1W\')}4.v.2z(a)}}}3B(4.v[4.t].K!=l.K){4.t++}8(4.1E){8(18){$(\'1X, 1Y, 1Z\').u(\'21\',\'3C\');$("#T").u(\'A\',$(U).A())}$("#T").u({\'3D-3E\':4.2A,\'22\':4.2B}).Z()}$(19).11("23.L 24.L",$.q.r.2C);1h()};p 1h(){$("#1n, #1o, #1i, #H").1a();n b=4.v[4.t].K;8(b.1d("1j")||l.3F.2D("1j")>=0){$.q.r.1F();1p(\'<1j s="2E" 3G="2F.q.r.2G()" 3H="3I\'+P.1b(P.3J()*3K)+\'" 2H="0" 3L="0" 13="\'+b+\'"></1j>\',4.1G,4.1H)}C 8(b.1d(/#/)){n c=19.3M.K.3N(\'#\')[0];c=b.3O(c,\'\');c=c.1R(c.2D(\'#\'));1p(\'<9 s="3P">\'+$(c).2I()+\'</9>\',4.1G,4.1H)}C 8(b.1d(1z)){X=1v 1w;X.13=b;8(X.3Q){25()}C{$.q.r.1F();$(X).Q().11(\'3R\',p(){$("#M").1a();25()})}}C{$.q.r.1F();$.3S(b,p(a){$("#M").1a();1p(\'<9 s="3T">\'+a+\'</9>\',4.1G,4.1H)})}};p 25(){n a=X.E;n b=X.A;n c=(4.N*2)+40;n d=(4.N*2)+26;n w=$.q.r.1q();8(4.2J&&(a>(w[0]-c)||b>(w[1]-d))){n e=P.28(P.28(w[0]-c,a)/a,P.28(w[1]-d,b)/b);a=P.1b(e*a);b=P.1b(e*b)}1p(\'<1l 1W="" s="3U" 13="\'+X.13+\'" />\',a,b)};p 2K(){8((4.v.Y-1)>4.t){n a=4.v[4.t+1].K||F;8(a&&a.1d(1z)){1I=1v 1w();1I.13=a}}8(4.t>0){n a=4.v[4.t-1].K||F;8(a&&a.1d(1z)){1I=1v 1w();1I.13=a}}};p 1p(a,b,c){1f=D;n d=4.N;8(1S||m){$("#y")[0].15.2L("A");$("#y")[0].15.2L("E")}8(d>0){b+=d*2;c+=d*2;$("#y").u({\'z\':d+\'R\',\'2M\':d+\'R\',\'2N\':d+\'R\',\'B\':d+\'R\',\'E\':\'2O\',\'A\':\'2O\'});8(1S||m){$("#y")[0].15.2P(\'A\',\'(O.2Q.3V - \'+d*2+\')\');$("#y")[0].15.2P(\'E\',\'(O.2Q.3W - \'+d*2+\')\')}}C{$("#y").u({\'z\':0,\'2M\':0,\'2N\':0,\'B\':0,\'E\':\'2R%\',\'A\':\'2R%\'})}8($("#x").16(":V")&&b==$("#x").E()&&c==$("#x").A()){$("#y").1J(\'29\',p(){$("#y").1r().1K($(a)).2a("1L",p(){1s()})});J}n w=$.q.r.1q();n e=(c+26)>w[1]?w[3]:(w[3]+P.1b((w[1]-c-26)*0.5));n f=(b+40)>w[0]?w[2]:(w[2]+P.1b((w[0]-b-40)*0.5));n g={\'B\':f,\'z\':e,\'E\':b+\'R\',\'A\':c+\'R\'};8($("#x").16(":V")){$("#y").1J("1L",p(){$("#y").1r();$("#x").2b(g,4.2S,4.2T,p(){$("#y").1K($(a)).2a("1L",p(){1s()})})})}C{8(4.2c>0&&4.v[4.t].S!==1m){$("#y").1r().1K($(a));n h=4.v[4.t].S;n i=$.q.r.2d(h);$("#x").u({\'B\':(i.B-20-4.N)+\'R\',\'z\':(i.z-20-4.N)+\'R\',\'E\':$(h).E()+(4.N*2),\'A\':$(h).A()+(4.N*2)});8(4.2e){g.22=\'Z\'}$("#x").2b(g,4.2c,4.2U,p(){1s()})}C{$("#y").1a().1r().1K($(a)).Z();$("#x").u(g).2a("1L",p(){1s()})}}};p 2V(){8(4.t!==0){$("#1o, #2W").Q().11("17",p(e){e.2X();4.t--;1h();J F});$("#1o").Z()}8(4.t!=(4.v.Y-1)){$("#1n, #2Y").Q().11("17",p(e){e.2X();4.t++;1h();J F});$("#1n").Z()}};p 1s(){8($.14.1g){$("#y")[0].15.1M(\'1e\');$("#x")[0].15.1M(\'1e\')}2V();2K();$(U).11("1N.L",p(e){8(e.2f==27&&4.2Z){$.q.r.1c()}C 8(e.2f==37&&4.t!==0){$(U).Q("1N.L");4.t--;1h()}C 8(e.2f==39&&4.t!=(4.v.Y-1)){$(U).Q("1N.L");4.t++;1h()}});8(4.30){$("#y").17($.q.r.1c)}8(4.1E&&4.31){$("#T").11("17",$.q.r.1c)}8(4.33){$("#1i").11("17",$.q.r.1c).Z()}8(1V 4.v[4.t].G!==\'1m\'&&4.v[4.t].G.Y>0){n a=$("#x").1u();$(\'#H 9\').3X(4.v[4.t].G).2I();$(\'#H\').u({\'z\':a.z+$("#x").34()-32,\'B\':a.B+(($("#x").35()*0.5)-($(\'#H\').E()*0.5))}).Z()}8(4.1E&&18){$(\'1X, 1Y, 1Z\',$(\'#y\')).u(\'21\',\'V\')}8($.1T(4.2g)){4.2g(4.v[4.t])}8($.14.1g){$("#x")[0].15.1M(\'1e\');$("#y")[0].15.1M(\'1e\')}1f=F};J O.Q(\'17.L\').11(\'17.L\',2w)};$.q.r.2C=p(){n w=$.q.r.1q();8(4.2h&&$("#x").16(\':V\')){n a=$("#x").35();n b=$("#x").34();n c={\'z\':(b>w[1]?w[3]:w[3]+P.1b((w[1]-b)*0.5)),\'B\':(a>w[0]?w[2]:w[2]+P.1b((w[0]-a)*0.5))};$("#x").u(c);$(\'#H\').u({\'z\':c.z+b-32,\'B\':c.B+((a*0.5)-($(\'#H\').E()*0.5))})}8(18&&$("#T").16(\':V\')){$("#T").u({\'A\':$(U).A()})}8($("#M").16(\':V\')){$("#M").u({\'B\':((w[0]-40)*0.5+w[2]),\'z\':((w[1]-40)*0.5+w[3])})}};$.q.r.1t=p(a,b){J 3Y($.3Z(a.41?a[0]:a,b,D))||0};$.q.r.2d=p(a){n b=a.42();b.z+=$.q.r.1t(a,\'43\');b.z+=$.q.r.1t(a,\'44\');b.B+=$.q.r.1t(a,\'45\');b.B+=$.q.r.1t(a,\'46\');J b};$.q.r.2G=p(){$("#M").1a();$("#2E").Z()};$.q.r.1q=p(){J[$(19).E(),$(19).A(),$(U).47(),$(U).48()]};$.q.r.36=p(){8(!$("#M").16(\':V\')){38(1x);J}$("#M > 9").u(\'z\',(1y*-40)+\'R\');1y=(1y+1)%12};$.q.r.1F=p(){38(1x);n w=$.q.r.1q();$("#M").u({\'B\':((w[0]-40)*0.5+w[2]),\'z\':((w[1]-40)*0.5+w[3])}).Z();$("#M").11(\'17\',$.q.r.1c);1x=49($.q.r.36,4a)};$.q.r.1c=p(){1f=D;$(X).Q();$(U).Q("1N.L");$(19).Q("23.L 24.L");$("#T, #y, #1i").Q();$("#1i, #M, #1o, #1n, #H").1a();1O=p(){8($("#T").16(\':V\')){$("#T").1J("29")}$("#y").1r();8(4.2h){$(19).Q("23.L 24.L")}8(18){$(\'1X, 1Y, 1Z\').u(\'21\',\'V\')}8($.1T(4.2i)){4.2i()}1f=F};8($("#x").16(":V")!==F){8(4.2j>0&&4.v[4.t].S!==1m){n a=4.v[4.t].S;n b=$.q.r.2d(a);n c={\'B\':(b.B-20-4.N)+\'R\',\'z\':(b.z-20-4.N)+\'R\',\'E\':$(a).E()+(4.N*2),\'A\':$(a).A()+(4.N*2)};8(4.2e){c.22=\'1a\'}$("#x").3a(F,D).2b(c,4.2j,4.3b,1O)}C{$("#x").3a(F,D).1J(\'29\',1O)}}C{1O()}J F};$.q.r.3c=p(){n a=\'\';a+=\'<9 s="T"></9>\';a+=\'<9 s="M"><9></9></9>\';a+=\'<9 s="x">\';a+=\'<9 s="3d">\';a+=\'<9 s="1i"></9>\';a+=\'<9 s="W"><9 I="W" s="4b"></9><9 I="W" s="4c"></9><9 I="W" s="4d"></9><9 I="W" s="4e"></9><9 I="W" s="4f"></9><9 I="W" s="4g"></9><9 I="W" s="4h"></9><9 I="W" s="4i"></9></9>\';a+=\'<a K="2k:;" s="1o"><1P I="2l" s="2W"></1P></a><a K="2k:;" s="1n"><1P I="2l" s="2Y"></1P></a>\';a+=\'<9 s="y"></9>\';a+=\'</9>\';a+=\'</9>\';a+=\'<9 s="H"></9>\';$(a).3e("4j");$(\'<3f 4k="0" 4l="0" 4m="0"><3g><1k I="H" s="4n"></1k><1k I="H" s="4o"><9></9></1k><1k I="H" s="4p"></1k></3g></3f>\').3e(\'#H\');8($.14.1g){$(".W").1Q()}8(18){$("9#T").u("1u","2r");$("#M 9, #1i, .H, .2l").1Q();$("#3d").4q(\'<1j s="3h" 13="2k:F;" 4r="2q" 2H="0"></1j>\');n b=$(\'#3h\')[0].4s.U;b.4t();b.1c()}};$.q.r.2v={N:10,2J:D,2e:D,2c:0,2j:0,2S:4u,2U:\'2m\',3b:\'2m\',2T:\'2m\',1G:4v,1H:4w,1E:D,2B:0.3,2A:\'#4x\',2Z:D,33:D,31:D,30:D,2h:D,v:[],1U:1A,2g:1A,2i:1A};$(U).4y(p(){m=$.14.1g&&!$.4z;8($("#x").Y<1){$.q.r.3c()}})})(2F);',62,284,'||||opts||||if|div||||||||||||||var||function|fn|fancybox|id|itemCurrent|css|itemArray||fancy_outer|fancy_content|top|height|left|else|true|width|false|title|fancy_title|class|return|href|fb|fancy_loading|padding|this|Math|unbind|px|orig|fancy_overlay|document|visible|fancy_bg|imagePreloader|length|show||bind||src|browser|style|is|click|IE6|window|hide|round|close|match|filter|busy|msie|_change_item|fancy_close|iframe|td|img|undefined|fancy_right|fancy_left|_set_content|getViewport|empty|_finish|getNumeric|position|new|Image|loadingTimer|loadingFrame|imageRegExp|null|rel|children|first|overlayShow|showLoading|frameWidth|frameHeight|objNext|fadeOut|append|normal|removeAttribute|keydown|__cleanup|span|fixPNG|substr|oldIE|isFunction|callbackOnStart|typeof|alt|embed|object|select||visibility|opacity|resize|scroll|_proceed_image|60||min|fast|fadeIn|animate|zoomSpeedIn|getPosition|zoomOpacity|keyCode|callbackOnShow|centerOnScroll|callbackOnClose|zoomSpeedOut|javascript|fancy_ico|swing|each|backgroundImage|png|no|absolute|relative|version|extend|defaults|_initialize|_start|attr|push|overlayColor|overlayOpacity|scrollBox|indexOf|fancy_frame|jQuery|showIframe|frameborder|html|imageScale|_preload_neighbor_images|removeExpression|right|bottom|auto|setExpression|parentNode|100|zoomSpeedChange|easingChange|easingIn|_set_navigation|fancy_left_ico|stopPropagation|fancy_right_ico|enableEscapeButton|hideOnContentClick|hideOnOverlayClick||showCloseButton|outerHeight|outerWidth|animateLoading||clearInterval||stop|easingOut|build|fancy_inner|appendTo|table|tr|fancy_bigIframe|url|RegExp|none|progid|DXImageTransform|Microsoft|AlphaImageLoader|enabled|sizingMethod|backgroundRepeat|repeat|crop|scale|jpg|gif|bmp|jpeg|XMLHttpRequest|for|while|hidden|background|color|className|onload|name|fancy_iframe|random|1000|hspace|location|split|replace|fancy_div|complete|load|get|fancy_ajax|fancy_img|clientHeight|clientWidth|text|parseInt|curCSS||jquery|offset|paddingTop|borderTopWidth|paddingLeft|borderLeftWidth|scrollLeft|scrollTop|setInterval|66|fancy_bg_n|fancy_bg_ne|fancy_bg_e|fancy_bg_se|fancy_bg_s|fancy_bg_sw|fancy_bg_w|fancy_bg_nw|body|cellspacing|cellpadding|border|fancy_title_left|fancy_title_main|fancy_title_right|prepend|scrolling|contentWindow|open|300|560|340|666|ready|boxModel'.split('|'),0,{}));

/* http://keith-wood.name/bookmark.html
   Sharing bookmarks for jQuery v1.3.0.
   Written by Keith Wood (kbwood{at}iinet.com.au) March 2008.
   Dual licensed under the GPL (http://dev.jquery.com/browser/trunk/jquery/GPL-LICENSE.txt) and 
   MIT (http://dev.jquery.com/browser/trunk/jquery/MIT-LICENSE.txt) licenses. 
   Please attribute the author if you use it. */
eval(function(p,a,c,k,e,r){e=function(c){return(c<a?'':e(parseInt(c/a)))+((c=c%a)>35?String.fromCharCode(c+29):c.toString(36))};if(!''.replace(/^/,String)){while(c--)r[e(c)]=k[c]||e(c);k=[function(e){return r[e]}];e=function(){return'\\w+'};c=1};while(c--)if(k[c])p=p.replace(new RegExp('\\b'+e(c)+'\\b','g'),k[c]);return p}('(M($){L s=\'O\';M 1g(){K.2I=1c 6T().6U();K.1u={w:\'\',1m:\'\',G:\'\',Z:\'\',2J:[],1v:\'6V\',2K:\'14.6W\',1n:16,1G:16,1w:\'6X\',1x:1H,2L:\'6Y 1I {s}\',1o:1h,2M:\'1g K 2N...\',1J:1h,2O:\'6Z\',2P:0,2Q:1h,2R:\'E-7a\',2S:1,2T:\'7b 1p\',2U:\'I 7c 7d 7e 1y K 1p 7f:\\n{t} ({u})\',2V:\'7g 7h K 7i 7j\\7k 7l-D 1I O K 1p.\',1z:1A};K.1i={\'7m\':{z:\'7n 2W\',A:7o,w:\'B://F.a1-2W.C/7p.15?u={u}&x;t={t}\'},\'1K\':{z:\'1K\',A:69,w:\'B://F.1K.de/14/?W=N&x;1L={u}&x;G={t}\'},\'2X\':{z:\'7q\',A:75,w:\'B://F.2X.C/7r?w={u}&x;G={t}\'},\'2Y\':{z:\'2Z\',A:7s,w:\'B://F.2Y.C/2Z/7t/7u.V?w={u}&x;G={t}\'},\'34\':{z:\'7v\',A:2,w:\'B://37.3a.34.C/7w/7x?w={u}&x;G={t}\'},\'3b\':{z:\'7y\',A:76,w:\'B://F.3b.C/7z/7A/?7B={u}&x;7C={t}\'},\'3c\':{z:\'7D\',A:3,w:\'B://7E.3c.C/7F/7G?v=1.2&x;t=7H&x;w={u}&x;G={t}\'},\'3d\':{z:\'7I\',A:62,w:\'B://F.3d.C/7J.7K?w={u}&x;G={t}\'},\'3e\':{z:\'7L\',A:7M,w:\'B://7N.3e.C/do/N?7O={u}&x;1d={t}&x;fr=7P&x;dc=\'},\'3f\':{z:\'7Q\',A:63,w:\'B://3f.C/1a/w/?w={u}&x;G={t}\'},\'3g\':{z:\'7R\',A:64,w:\'B://3g.C/c/Q?3h={u}&x;3i={t}\'},\'3j\':{z:\'7S\',A:77,w:\'B://F.3j.1j/7T?7U=7V&x;w={u}&x;Z={t}\'},\'7W\':{z:\'3k.3l\',A:7X,w:\'B://3k.3l/?w={u}\'},\'3m\':{z:\'7Y\',A:7Z,w:\'B://F.3m.C/84.H?w={u}\'},\'1M\':{z:\'1M\',A:8a,w:\'B://1M.C/8b?w={u}\'},\'3n\':{z:\'8c\',A:4,w:\'B://F.3n.C/1q.H?8d=8e/8f.H&x;3h={u}&x;3i={t}\'},\'3o\':{z:\'8g\',A:8h,w:\'B://3o.1N/3p?1O={t} {u}\'},\'3q\':{z:\'8i\',A:5,w:\'B://3q.1b/3a/1c.H?3r=1&x;8j=1&x;w={u}&x;G={t}\'},\'3s\':{z:\'8k\',A:8l,w:\'B://3s.1P/8m.15?w={u}&x;G={t}&x;1e={d}\'},\'8n\':{z:\'O.1d\',A:71,w:\'B://F.O.1d/O.H?w={u}\'},\'8o\':{z:\'14.fr\',A:78,w:\'B://F.14.fr/8p/8q?W=N&x;1L={u}&x;G={t}\'},\'3t\':{z:\'8r\',A:8s,w:\'B://F.3t.1b/J/?w={u}&x;G={t}\'},\'3u\':{z:\'8t\',A:8u,w:\'B://F.3u.C/1g.V?w={u}&x;G={t}\'},\'3v\':{z:\'8v\',A:8w,w:\'B://3v.1N/N.15?u={u}\'},\'3w\':{z:\'8x\',A:79,w:\'B://3w.C/8y.H?8z={u}&x;8A={t}\'},\'8B\':{z:\'8C\',A:8D,w:\'B://F.8E-3x.C/J.H?w={u}\'},\'bx\':{z:\'8F 8G\',A:73,w:\'B://bx.8H.C/8I/N-8J-1I-bx.8K?w={u}\'},\'3y\':{z:\'8L\',A:80,w:\'B://3y.C/Q?v=5;1k={u}&x;1r={t}\'},\'3z\':{z:\'8M\',A:6,w:\'B://F.3z.C/1B/8N.15?w={u}&x;G={t}\'},\'1Q\':{z:\'1Q\',A:81,w:\'B://F.1Q.1j/8O?w={u}&x;G={t}\'},\'3A\':{z:\'8P\',A:82,w:\'B://F.3A.1j/N?3B={u}&x;G={t}\'},\'3C\':{z:\'8Q\',A:49,w:\'B://3C.C/8R.3D?w={u}&x;G={t}\'},\'8S\':{z:\'8T 8U\',A:74,w:\'B://8V.1s/N.H?8W=1&x;w={u}\'},\'8X\':{z:\'3E.3F.1s\',A:7,w:\'B://3E.3F.1s/1a?w={u}&x;G={t}\'},\'3G\':{z:\'8Y 8Z\',A:50,w:\'B://F.3G.C/J.H?w={u}&x;G={t}\'},\'3H\':{z:\'9a\',A:9b,w:\'B://3H.C/J?w={u}&x;G={t}&x;1f={d}\'},\'3I\':{z:\'9c\',A:8,w:\'B://3I.C/J?1R=2&x;w={u}&x;G={t}\'},\'3J\':{z:\'9d\',A:9e,w:\'B://F.3J.C/J.V?w={u}&x;G={t}&x;Z={d}\'},\'3K\':{z:\'9f\',A:9,w:\'B://F.3K.C/1a?w={u}&x;G={t}\'},\'3L\':{z:\'9g 9h\',A:9i,w:\'B://3L.1b/J.H?w={u}&G={t}\'},\'3M\':{z:\'9j\',A:9k,w:\'B://F.3M.C/Q.H?u={u}&x;t={t}\'},\'3N\':{z:\'9l\',A:9m,w:\'B://3N.9n.C/9o/9p.V?3O=b&w={u}&x;G={t}\'},\'3P\':{z:\'9q\',A:9r,w:\'B://F.3P.C/9s/?w={u}&x;G={t}\'},\'3Q\':{z:\'9t\',A:10,w:\'B://F.3Q.C/3R/N.15?w={u}&x;G={t}\'},\'1S\':{z:\'1S\',A:9u,w:\'B://F.1S.de/9v/1T?9w={u}\'},\'3S\':{z:\'9x\',A:9y,w:\'B://F.3S.3T/9z/9A?w={u}&x;G={t}&x;1e={d}\'},\'3U\':{z:\'9B\',A:9C,w:\'B://F.3U.C/3V.H?u={u}&t={t}\'},\'3W\':{z:\'9D\',A:9E,w:\'B://F.3W.C.br/1q.9F?a=9G&x;w={u}&x;9H={t}&x;9I=\'},\'3X\':{z:\'9J\',A:83,w:\'B://F.3X.C/9K.W?w={u}&x;G={t}\'},\'3Y\':{z:\'9L\',A:9M,w:\'B://3Y.C/9N?1f={u}&x;1r={t}\'},\'3Z\':{z:\'9O\',A:11,w:\'B://F.3Z.C/3V.H?u={u}&x;t={t}\'},\'1U\':{z:\'9P\',A:12,w:\'B://41.1U.C/41/1U/J.1V?9Q={u}&x;9R={t}\'},\'1W\':{z:\'9S\',A:13,w:\'B://1W.C/9T.V?u={u}&x;t={t}\'},\'48\':{z:\'9U\',A:9V,w:\'B://F.48.C/1a.H?9W={u}&x;9X={t}\'},\'1X\':{z:\'1X\',A:9Y,w:\'B://1X.az/9Z/N/a0?w={u}&x;G={t}&x;1f={d}\'},\'4a\':{z:\'a2\',A:85,w:\'B://F.4a.C/J/{u}\'},\'1Y\':{z:\'1Y\',A:a3,w:\'B://F.1Y.C/?a4=Q&x;w={u}&x;G={t}&x;1e={d}\'},\'4b\':{z:\'a5\',A:86,w:\'B://F.4b.C/J?w={u}&x;G={t}\'},\'4c\':{z:\'a6\',A:51,w:\'B://a7.4c.C/1a?w={u}&x;G={t}\'},\'4d\':{z:\'a8\',A:52,w:\'B://4d.C/Q?w={u}&x;G={t}\'},\'4e\':{z:\'a9\',A:53,w:\'B://4e.C/ab/J/N.H?w={u}&x;G={t}\'},\'4f\':{z:\'ac\',A:87,w:\'B://F.4f.C/J/?ad={u}\'},\'4g\':{z:\'ae\',A:af,w:\'B://F.4g.1j/4h-ag?w={u}&x;G={t}\'},\'4i\':{z:\'ah ai\',A:88,w:\'B://4i.C/aj/J.V?w={u}&x;1C=ak&x;G={t}\'},\'4j\':{z:\'al\',A:am,w:\'B://F.4j.C/1B/an/J.H?w={u}\'},\'4k\':{z:\'ao\',A:16,w:\'B://F.4k.C/14/3x?ap=4l&x;aq={u}&x;G={t}\'},\'4m\':{z:\'ar\',A:89,w:\'B://F.4m.C/4n/as?u={u}&x;t={t}\'},\'4o\':{z:\'at\',A:au,w:\'B://F.4o.1j/N.H?1e={u}&x;G={t}\'},\'av\':{z:\'4p.4q.4r\',A:aw,w:\'B://F.4p.4q.4r/4l?w={u}&x;G={t}&x;Z={d}\'},\'ax\':{z:\'ay\',A:aA,w:\'B://1B.aB.C/aC?u={u}&x;t={t}\'},\'aD\':{z:\'aE aF\',A:aG,w:\'B://F.aH-aI.co.aJ/J.H?w={u}&x;1R=1\'},\'4s\':{z:\'aK\',A:90,w:\'B://F.4s.C/J.H?w={u}&x;G={t}\'},\'1Z\':{z:\'1Z\',A:aL,w:\'B://1Z.C/?1O={u}\'},\'4t\':{z:\'aM\',A:91,w:\'B://F.4t.C/aN/1c?w={u}&x;G={t}\'},\'2a\':{z:\'2a\',A:aO,w:\'B://F.2a.C/J.H?aP={u}\'},\'2b\':{z:\'2b\',A:aQ,w:\'B://F.2b.C/J.H?w={u}&x;t={t}\'},\'2c\':{z:\'2c\',A:aR,w:\'B://F.2c.C/?2d=aS&x;4u={u}\'},\'4v\':{z:\'aT\',A:17,w:\'B://F.4v.C/J?w={u}\'},\'4w\':{z:\'aU\',A:aV,w:\'B://F.4w.1b/aW/N/4x/?aX={u}&x;4y={t}&x;1C=12\'},\'aY\':{z:\'4z.ca\',A:92,w:\'B://4z.ca/aZ/1c?b0={t}%20{u}\'},\'4A\':{z:\'b1\',A:93,w:\'B://F.4A.C.br/b2.15?b3={u}&x;b4={t}\'},\'4B\':{z:\'b5\',A:94,w:\'B://F.4B.C/b?u={u}&x;t={y}\'},\'4C\':{z:\'b6\',A:b7,w:\'B://F.4C.C/b8/N/?w={u}&x;G={t}\'},\'4D\':{z:\'b9\',A:95,w:\'B://F.4D.C/?W=ba&x;w={u}\'},\'4E\':{z:\'bb\',A:96,w:\'B://F.4E.C/N/?w={u}&x;G={t}\'},\'4F\':{z:\'bc\',A:65,w:\'B://F.4F.C/bd/be?w={u}&x;bf=bg=&x;bh=1H\'},\'4G\':{z:\'bi\',A:bj,w:\'B://F.4G.C/J.H?w={u}\'},\'4H\':{z:\'bk\',A:97,w:\'B://F.4H.C/J.H?bl=bn&x;w={u}\'},\'4I\':{z:\'bo\',A:98,w:\'B://F.4I.de/J.H?w={u}\'},\'4J\':{z:\'bp\',A:54,w:\'B://F.4J.C/J.H?w={u}\'},\'bq\':{z:\'bs\',A:43,w:\'B://F.bt.C/1a?w={u}&x;G={t}\'},\'4K\':{z:\'bu\',A:bv,w:\'B://F.4K.C/J.H?w={u}\'},\'bw\':{z:\'4L.1d\',A:by,w:\'B://4L.1d/bz.V?3B={u}&x;bA={t}&x;Z={d}\'},\'4M\':{z:\'bB\',A:bC,w:\'B://F.4M.C/bD?u={u}&x;t={t}\'},\'4N\':{z:\'bE\',A:70,w:\'B://4N.C/14/bF/?w={u}&x;G={t}&x;1e={d}&x;bG=\'},\'4O\':{z:\'bH\',A:18,w:\'B://F.4O.C/go/bI?w={u}&x;G={t}\'},\'4P\':{z:\'bJ\',A:66,w:\'B://F.4P.C/bK?3r=1H&x;w={u}&x;G={t}&x;bL=1h&x;4Q={d}&x;bM=\'},\'4R\':{z:\'bN\',A:bO,w:\'B://4R.C.br/bP.H?bQ={u}\'},\'4S\':{z:\'bR\',A:19,w:\'B://F.4S.C/bS.bT?1r={u}\'},\'4T\':{z:\'bU\',A:bV,w:\'B://F.4T.C/bW/bX.15?w={u}\'},\'4U\':{z:\'bY\',A:bZ,w:\'B://F.4U.C/J.H?w={u}\'},\'4V\':{z:\'c0\',A:99,w:\'B://F.4V.c1/14/c2?O[w]={u}&x;O[Z]={t}\'},\'2e\':{z:\'2e.1P\',A:c3,w:\'B://2e.1P/1k/?c4=1&x;c5[w]={u}\'},\'4W\':{z:\'c6éc7\',A:55,w:\'B://4W.1b/J.H?w={u}\'},\'c8\':{z:\'c9\',A:21,w:\'B://F.cb.C/cc.W?u={u}\'},\'cd\':{z:\'ce cf\',A:22,w:\'B://F.cg-ch.C/1q.H?W=4u&x;ci={u}&x;cj={t}\'},\'4X\':{z:\'ck\',A:23,w:\'B://F.4X.C/J/4Y?cl={u}&x;G={t}\'},\'4Z\':{z:\'cm\',A:24,w:\'B://4Z.C/cp/cq/cr/5a?1f=&x;w={u}&x;1r={t}\'},\'5b\':{z:\'cs\',A:ct,w:\'B://F.5b.C/1k-1p.H?u={u}&x;n={t}\'},\'5c\':{z:\'cu\',A:25,w:\'B://F.5c.C/cv/cw/cx/?u={u}&x;t={t}\'},\'5d\':{z:\'cy\',A:56,w:\'B://F.5d.C/4x.V?w={u}&x;G={t}\'},\'5e\':{z:\'cz\',A:cA,w:\'B://F.5e.C/go/cB/3R/5f=2f&x;cC=2g&x;w={u}&x;G={t}\'},\'5g\':{z:\'cD\',A:26,w:\'B://F.5g.C/J/?U={u}&x;T={t}\'},\'5h\':{z:\'cE\',A:cF,w:\'B://F.5h.C/Q?w={u}&x;G={t}\'},\'5i\':{z:\'cG\',A:27,w:\'B://5i.C/W/cH?w={u}&x;G={t}&x;1o=5j\'},\'5k\':{z:\'cI\',A:cJ,w:\'B://5k.1b/J?w={u}&x;G={t}&x;2d=cK\'},\'5l\':{z:\'cL\',A:28,w:\'B://F.5l.C/cM/2f?u={u}&x;h={t}\'},\'5m\':{z:\'cN\',A:29,w:\'B://5f.5m.C/?5n={u}&x;t={t}\'},\'5o\':{z:\'cO\',A:cP,w:\'B://5o.3T/cQ.cR?u={u}&x;t={t}&x;b={d}\'},\'5p\':{z:\'cS\',A:57,w:\'B://5p.5q.1d/1a?w={u}&x;G={t}\'},\'5r\':{z:\'cT\',A:72,w:\'B://F.5r.de/5s/1T/cU.cV?cW={u}&x;G={t}\'},\'2h\':{z:\'cX\',A:cY,w:\'B://cZ.2h.C/5t?d0=2h.C&x;du={u}&x;d1={t}&x;cn=\'},\'5u\':{z:\'d2\',A:d3,w:\'B://F.5u.C/Q?w={u}&x;G={t}&x;Z={d}\'},\'5v\':{z:\'d4\',A:d5,w:\'B://F.5v.C/d6?1R=2&x;w={u}\'},\'5w\':{z:\'d7\',A:d8,w:\'B://5w.C/14?W=N&x;1L={u}&x;G={t}\'},\'5x\':{z:\'d9\',A:da,w:\'B://5x.C/db?w={u}&x;G={t}\'},\'5y\':{z:\'dd\',A:df,w:\'B://5y.fm/2d/?1k={u}&x;G={t}\'},\'dg\':{z:\'dh\',A:di,w:\'B://dj.1s/dk/1c/?w={u}&x;G={t}\'},\'5z\':{z:\'dl dm\',A:dn,w:\'B://F.5z.C/dp/?dq={u}\'},\'5A\':{z:\'dr\',A:ds,w:\'B://F.5A.C/m?dt={u}&x;dv=dw\'},\'5B\':{z:\'dx\',A:dy,w:\'B://F.5B.C/dz-K.H?u={u}&x;t={t}\'},\'dA\':{z:\'5C\',A:dB,w:\'B://5C.C/Q?dC={u}&x;G={t}\'},\'5D\':{z:\'dD\',A:58,w:\'B://F.5D.C/J/?U={u}&x;T={t}\'},\'5E\':{z:\'dE\',A:dF,w:\'B://F.5E.C/N-dG-2N?w={u}&x;dH={t}&x;1C=1p\'},\'5F\':{z:\'dI\',A:dJ,w:\'B://F.5F.1N/dK?w={u}\'},\'2i\':{z:\'2i\',A:30,w:\'B://2i.C/J?w={u}&x;G={t}\'},\'5G\':{z:\'dL\',A:46,w:\'B://F.5G.C/dM/1c?5H={u}&x;G={t}\'},\'5I\':{z:\'dN\',A:31,w:\'B://5I.5q.1d/1a.15.H?w={u}&x;G={t}\'},\'5J\':{z:\'dO dP dQ\',A:dR,w:\'B://5J.C/4h?w={u}&x;G={t}&x;1f={d}\'},\'5K\':{z:\'dS\',A:dT,w:\'B://F.5K.C/?s={u}\'},\'2j\':{z:\'dU\',A:32,w:\'B://F.2j.C/2j/dV.do?1t={u}&x;G={t}\'},\'5L\':{z:\'dW\',A:dX,w:\'B://F.5L.C/dY.H?dZ={u}&x;e0={t}\'},\'5M\':{z:\'e1\',A:33,w:\'B://5M.1j/O.1V?w={u}&x;G={t}\'},\'5N\':{z:\'e2\',A:e3,w:\'B://5N.C/J.H?w={u}&x;G={t}\'},\'5O\':{z:\'e4\',A:e5,w:\'B://e6.5O.C/1B/J/?w={u}&x;G={t}\'},\'5P\':{z:\'e7\',A:e8,w:\'B://F.5P.C/Q.H?w={u}&x;G={t}\'},\'5Q\':{z:\'e9\',A:44,w:\'B://5Q.C/J.H?w={u}&x;G={t}\'},\'2k\':{z:\'ea\',A:35,w:\'B://F.2k.1b/2k.H?w={u}&x;G={t}\'},\'5R\':{z:\'eb\',A:42,w:\'B://F.5R.C/ec/O?{u}&x;G={t}\'},\'5S\':{z:\'ed\',A:ee,w:\'B://F.5S.C/1q.H?3O=ef&x;1C=eg&x;v=3&x;eh={u}&x;ei={t}\'},\'5T\':{z:\'ej\',A:ek,w:\'B://F.5T.C/el/Q/em?w={u}&x;G={t}\'},\'5U\':{z:\'eo\',A:ep,w:\'B://F.5U.1b/eq/er/?u={u}&x;1e={t}\'},\'5V\':{z:\'es\',A:36,w:\'B://F.5V.C/J?w={u}&x;G={t}\'},\'5W\':{z:\'et\',A:eu,w:\'B://F.5W.C/J?w={u}&x;G={t}\'},\'5X\':{z:\'ev\',A:ew,w:\'B://F.5X.C/ex/1q.3D?w={u}\'},\'5Y\':{z:\'ey\',A:ez,w:\'B://5Y.1b/4Y/eA?w={u}&x;G={t}&x;4Q={d}\'},\'5Z\':{z:\'eB\',A:eC,w:\'B://F.5Z.C/J.H?w={u}\'},\'68\':{z:\'eD\',A:38,w:\'B://F.68.C/1W?N={u}\'},\'6a\':{z:\'eE\',A:eF,w:\'B://F.6a.1d/eG?W=f2&x;w={u}&x;G={t}\'},\'6b\':{z:\'eH\',A:eI,w:\'B://6b.C/6c?u={u}&x;G={t}\'},\'6d\':{z:\'eJ\',A:39,w:\'B://F.6d.C/eK/1c/J/eL/?w={u}&x;4y={t}\'},\'6e\':{z:\'eM\\\'d\',A:eN,w:\'B://6e.C/J.H?w={u}\'},\'6f\':{z:\'eO\',A:eP,w:\'B://F.6f.C/1k.H?w={u}\'},\'2l\':{z:\'2l\',A:eQ,w:\'B://F.2l.C/eR?w={u}&x;G={t}&x;1f={d}\'},\'2m\':{z:\'2m\',A:eS,w:\'B://F.2m.C/Q?v=3&x;u={u}&x;t={t}\'},\'2n\':{z:\'2n.C\',A:eT,w:\'B://F.2n.C/J.H?w={u}&x;G={t}&x;eU={d}\'},\'6g\':{z:\'eV\',A:45,w:\'B://6g.C/eW?w={u}\'},\'6h\':{z:\'eX\',A:eY,w:\'B://F.6h.C/eZ/Q/?w={u}&x;G={t}\'},\'6i\':{z:\'f0\',A:f1,w:\'B://6i.C/Q?2g&x;v=2&x;w={u}&x;G={t}\'},\'6j\':{z:\'f3\',A:f4,w:\'B://6j.C/4n/f5?p={u}\'},\'6k\':{z:\'f6\',A:f7,w:\'B://F.6k.de/f8?w={u}&x;G={t}\'},\'6l\':{z:\'f9\',A:47,w:\'B://F.6l.C/fa?5H={u}\'},\'fb\':{z:\'fc fd\',A:40,w:\'fe://37.ff.C/5s.V?fg=1&x;fh=en-1s&x;w={u}&x;G={t}\'},\'6m\':{z:\'fi fj\',A:fk,w:\'B://F.fl.C/6m/N?u={u}&x;t={t}\'},\'6n\':{z:\'fo\',A:fp,w:\'B://6n.C/r.H?r={u}&x;G={t}\'},\'6o\':{z:\'fq\',A:fs,w:\'B://F.6o.C/6c/5t/?W=2f&x;ft=5a&x;u={u}&x;t={t}\'},\'6p\':{z:\'fu\',A:fv,w:\'B://F.6p.C/Q.H?fw={u}\'},\'6q\':{z:\'fx\',A:fy,w:\'B://F.6q.1V/fz?w={u}&x;G={t}&x;1e={d}\'},\'6r\':{z:\'fA\',A:59,w:\'B://F.6r.C/fB/fC.V?u={u}&x;t={t}\'},\'6s\':{z:\'fD\',A:fE,w:\'B://F.6s.C/fF/fG?w={u}&x;G={t}\'},\'2o\':{z:\'6t fH\',A:60,w:\'B://14.2o.C/fI/fJ?fK=fL&x;u={u}&x;t={t}\'},\'fM\':{z:\'6t fN\',A:67,w:\'B://fO.2o.C/J?fP={u}&x;fQ={t}\'},\'6u\':{z:\'fR\',A:fS,w:\'B://F.6u.C/3p?1O={t} {u}\'},\'6v\':{z:\'fT\',A:61,w:\'B://F.6v.de/1T?fU={u}&x;fV={t}\'},\'2p\':{z:\'2p\',A:fW,w:\'B://F.2p.fr/1a/fX?f=aa&x;fY={u}&x;G={t}\'},\'6w\':{z:\'fZ\',A:g0,w:\'B://F.6w.C/?1k={u}&x;g1={t}\'},\'6x\':{z:\'g2\',A:g3,w:\'B://6x.C/g4.V?g5={u}&x;G={t}\'}}}$.2q(1g.6y,{1l:\'g6\',g7:M(a){2r(K.1u,a||{});R K},g8:M(a,b,c,d){K.1i[a]={z:b,A:c,w:d};R K},g9:M(){R K.1i},6z:M(a,b){a=$(a);P(a.2s(K.1l)){R}a.ga(K.1l);P(!a[0].2t){a[0].2t=\'bm\'+(++K.2I)}K.2u(a,b)},gb:M(a,b,c){a=$(a);P(!a.2s(K.1l)){R}P(2v b==\'6A\'){L d=b;b={};b[d]=c}K.2u(a,b)},2u:M(g,h){L i=$.2w(g[0],s)||$.2q({},K.1u);h=2r(i,h||{});$.2w(g[0],s,h);L j=h.2J;P(j.gc==0){$.2x(K.1i,M(a){j.gd(a)})}L k=h.2L||\'{s}\';L l=(h.1o?\'<a 1t="#" 1D="6B">\'+h.2M+\'</a><6C 1D="2y">\':\'\')+\'<6D 1D="ge\'+(h.1x?\' gf\':\'\')+\'">\';L m=M(a,b,c,d){L e=\'<6E><a 1t="\'+c+\'"\'+(d?\' gg="\'+d+\'"\':(h.1w?\' 1w="\'+h.1w+\'"\':\'\'))+\'>\';P(b!=1A){L f=k.S(/\\{s\\}/,a);P(2v b==\'gh\'){e+=\'<6F G="\'+f+\'" \'+(h.1v?\'1D="\'+h.1v+\'" \':\'\')+\'1E="\'+(h.1v?\'6G-gi: \':\'6G: gj w(\'+h.2K+\') 5j-gk \')+\'-\'+((b%h.1G)*h.1n)+\'1F -\'+(6H.gl(b/h.1G)*h.1n)+\'1F;\'+($.X.6I&&$.X.2z<\'1.9\'?\' 6J-2A: \'+h.1n+\'1F; 6J-6K: \'+(6H.gm(0,h.1n-16))+\'1F;\':\'\')+\'"></6F>\'}2B{e+=\'<gn 5n="\'+b+\'" gp="\'+f+\'" G="\'+f+\'"\'+(($.X.6I&&$.X.2z<\'1.9\')||($.X.2C&&$.X.2z<\'7.0\')?\' 1E="2D-2E: 6K;"\':($.X.2C?\' 1E="2D-2E: gq;"\':($.X.gr||$.X.gs?\' 1E="2D-2E: gt;"\':\'\')))+\'/>\'}e+=(h.1x?\'\':\'&#gu;\')}e+=(h.1x?\'\':a)+\'</a></6E>\';R e};L n=h.w||2F.6L.1t;L o=h.G||2G.G;L p=h.Z||\'\';P(h.1J){l+=m(h.2O,h.2P,\'#\',\'2H.O.6M(\\\'\'+n.S(/\'/g,\'\\\\\\\'\')+\'\\\',\\\'\'+o.S(/\'/g,\'\\\\\\\'\')+\'\\\')\')}P(h.2Q){l+=m(h.2R,h.2S,\'gv:?1r=\'+Y(h.2T)+\'&x;1f=\'+Y(h.2U.S(/\\{u\\}/,n).S(/\\{t\\}/,o).S(/\\{d\\}/,h.1e)))}L q=(!h.1m?\'\':Y((n.6N(\'?\')>-1?\'&\':\'?\')+h.1m+\'=\'));n=Y(n);o=Y(o);p=Y(p);L r=K.1i;$.2x(j,M(a,b){L c=r[b];P(c){l+=m(c.z,c.A,(h.1z?\'#\':c.w.S(/\\{u\\}/,n+(q?q+b:\'\')).S(/\\{t\\}/,o).S(/\\{d\\}/,p)),(h.1z?\'R 2H.O.6O(\\\'\'+g[0].2t+\'\\\',\\\'\'+b+\'\\\')\':\'\'))}});l+=\'</6D>\'+(h.1o?\'</6C>\':\'\');g.15(l);P(h.1o){g.1y(\'.6B\').6P(M(){L a=$(K).gw();L b=a.gx();a.1y(\'.2y\').6Q(\'2A\',b.2A).6Q(\'6R\',b.6R+a.gy()).gz();R 1h});$(2G).6P(M(a){g.1y(\'.2y\').gA()})}},gB:M(a){a=$(a);P(!a.2s(K.1l)){R}a.gC(K.1l).gD();$.gE(a[0],s)},6O:M(a,b){L c=$(\'#\'+a)[0];L d=$.2w(c,s);L e=$.O.1i[b];L f=d.w||2F.6L.1t;L g=(!d.1m?\'\':Y((f.6N(\'?\')>-1?\'&\':\'?\')+d.1m+\'=\'));L f=Y(f);L h=Y(d.G||2G.G);L i=Y(d.Z||\'\');d.1z.6S(c,[b,e.z,e.w.S(/\\{u\\}/,f+(g?g+b:\'\')).S(/\\{t\\}/,h).S(/\\{d\\}/,i)]);R 1h},6M:M(a,b){P($.X.2C){2F.2g.1J(a,b)}2B{gF(K.1u.2V)}}});M 2r(a,b){$.2q(a,b);gG(L c gH b){P(b[c]==1A){a[c]=1A}}R a}$.fn.O=M(a){L b=gI.6y.gJ.gK(gL,1);R K.2x(M(){P(2v a==\'6A\'){$.O[\'gM\'+a+\'1g\'].6S($.O,[K].gN(b))}2B{$.O.6z(K,a||{})}})};$.O=1c 1g()})(2H);',62,1042,'||||||||||||||||||||||||||||||||url|amp||display|icon|http|com|||www|title|php||submit|this|var|function|add|bookmark|if|share|return|replace|||aspx|action|browser|encodeURIComponent|description|||||bookmarks|html|||||post|net|new|it|desc|body|Bookmark|false|_sites|org|link|markerClassName|sourceTag|iconSize|popup|page|index|subject|us|href|_defaults|iconsStyle|target|compact|find|onSelect|null|news|type|class|style|px|iconCols|true|to|addFavorite|alltagz|address|bleetbox|se|status|ru|citeulike|phase|edelight|neu|fark|pl|faves|fnews|forgetfoo|hellotxt|||||||||||hipstr|hitmarks|hotklix|ref|memori|save|external|orkut|reddit|simpy|spurl|tulinq|tumblr|tusul|yahoo|yoolink|extend|extendRemove|hasClass|id|_updateBookmark|typeof|data|each|bookmark_popup|version|left|else|msie|vertical|align|window|document|jQuery|_uuid|sites|icons|hint|popupText|site|favoriteText|favoriteIcon|addEmail|emailText|emailIcon|emailSubject|emailBody|manualBookmark|webmarks|allvoices|amenme|AmenMe|||||aol|||favorites|||my|arto|ask|backflip|baidu|ballhype|bebo|Url|Title|bibsonomy|bit|ly|bizsugar|blinklist|bloggy|home|blogmarks|mini|bobrdobr|bordom|brainify|bryderi|buddymarks|mark|bzzster|care2|connotea|uri|current|htm|del|icio|designfloat|designmoo|digg|diglog|diigo|domelhor|doower|dosti|st|dotnetkicks|dzone|links|ekudos|nl|embarkons|sharer|eucliquei|evernote|fabulously40|facebook||cgi|||||||favoritus||folkd|foxiewire|fresqui|friendfeed|funp|gabbr|gacetilla|publish|globalgrind|gluvsnap|google|edit|gravee|account|grumper|haber|gen|tr|healthranker|hemidemi|addurl|hugg|hyves|tips|name|identi|imera|instapaper|investorlinks|jamespot|jumptags|kaboodle|kaevur|khabbr|kledy|kirtsy|kwoff|laaik|librerio|linkarena|linkagogo|linkedin|summary|linkninja|livejournal|lunch|lynki|maple|meneame|mixx|story|multiply|||||||||||addthis|mylinkvault|myspace|n4g|netlog|view|netscape|netvibes|netvouz|no|newstrust|newsvine|nowpublic|src|nujij|oknotizie|alice|oneview|quickadd|preview|osmosus|oyyla|phonefavs|pimpthisblog|ping|plaxo|plurk|polladium|posterous|propeller|protopage|pusha|scoopeo|newurl|segnalo|shetoldme|shoutwire|sitejot|slashdot|smaknews|sodahead|sonico|sphinn|squidoo|startaid|strands|studivz|stumbleupon|stumpedia|stylehive|svejo|tagza|||||||||technorati||technotizie|tellmypolitician|search|thisnext|tipd|transferr|twitthis|viadeo|virb|vodpod|webnews|wikio|wishlist|wists|worio|wovre|wykop|xanga|xerpi|Yahoo|yammer|yigg|yorumcuyum|youmob|prototype|_attachBookmark|string|bookmark_popup_text|div|ul|li|span|background|Math|mozilla|padding|bottom|location|_addFavourite|indexOf|_selected|click|css|top|apply|Date|getTime|bookmark_icons|gif|_blank|Send|Favorite|||||||||||mail|Interesting|thought|you|might|interesting|Please|close|dialog|and|npress|Ctrl|a1webmarks|A1|179|bm_edit|Allvoices|post_event|127|Amens|AmenToThis|myAOL|ffclient|AddBookmark|Arto|section|linkshare|lu|ln|Ask|myjeeves|mysearch|BookmarkIt|webpages|Backflip|add_page_pop|ihtml|Baidu|128|cang|iu|ien|BallHype|Bebo|BibSonomy|BibtexHandler|requTask|upload|bitly|129|bizSugar|130|||||bizsugarthis||||||180|bar|BlinkList|Action|Blink|addblink|Bloggy|131|Blogmarks|simple|Bobrdobr|132|addext|bookmarkit|bookmarksfr|favoris|AjoutFavori|Bordom|181|Brainify|133|Bryderi|134|BuddyMarks|add_bookmark|bookmark_url|bookmark_title|bukmark|Bukmark|182|buk|Business|Exchange|businessweek|api|article|tn|Bzzster|Care2|news_post|posturl|Connotea|Current|clipper|dealsplus|deals|plus|dealspl|ibm|delicious|Design|Float|||||||||||DesignMoo|135|Digg|Diglog|136|Diigo|Do|Melhor|183|Doower|137|Dosti|138|webdunia|Api|Share|DotNetKicks|139|kick|DZone|140|geschenk|purl|eKudos|141|artikel|nieuw|Embarkons|184|euCliquei|142|asp|clicar_novo|titulo|trecho|Evernote|clip|Fabulously40|143|writeblog|Facebook|Fark|new_url|new_comment|Faves|Authoring|FavoritUs|144|getlink|gettitle|185|node|drigg||Folkd|145|inc|FoxieWire|Fresqui|ocio|FriendFeed|funP||pages|Gabbr|bookurl|Gacetilla|146|form|Global|Grind|submission|Article|GluvSnap|186|pin|Google|op|bkmk|Gravee|bookmarkpop|Grumper|147|habergentr|148|hackernews|HackerNews||187|ycombinator|submitlink|hadashhot|Hadash|Hot|149|hadash|hot|il|HealthRanker|150|HEMiDEMi|user_bookmark|151|burl|188|152|share_this|Hugg|Hyves|153|profilemanage|text|identica|notice|status_textarea|Imera|post_d|linkUrl|linkName|Instapaper|InvestorLinks|154|zingiling|Jamespot|spotit|Jumptags|Kaboodle|grab|addItemWithUrl|pidOrRid|pid|redirectToKPage|Kaevur|189|Khabbr|out||yes|Kledy|Kirtsy|kool||Koolontheweb|koolontheweb|Kwoff|155|laaikit||190|NewStoryCompact|headline|Librerio|191|inbox|Linkarena|addlink|tags|LinkaGoGo|AddNoPopup|LinkedIn|shareArticle|ro|source|LinkNinja|156|enviar_link|story_url|LiveJournal|update|bml|Lunch|157|Bookmarklet|LunchThis|Lynki|158|Maple|nu|bookmarklet|192|sm|u_data|men|ame|mindbody|MindBodyGreen||mindbodygreen|passvote|misterwong|Mister|Wong|mister|wong|bm_url|bm_description|Mixx|page_url|Multiply|||gus|journal|compose|MyLinkVault|100|MySpace|Modules|PostTo|Pages|N4G|NetLog|101|manage|origin|Netscape|Netvibes|102|Netvouz|submitBookmark|NewsTrust|103|addtoany|Newsvine|_wine|NowPublic|Nujij|159|jij|lynkx|OKNOtizie|OneView|addBookmark|jsf|URL|Orkut|193|promote|nt|tt|Osmosus|194|Oyyla|160|gonder|PhoneFavs|161|PimpThisBlog|162|Submit||Ping||104|planypus|Planypus|163|planyp|plans|Plaxo|Pulse|105||pulse|share_link|Plurk|164|content||qualifier|shares|Polladium|165|poll|posterus|166|linkto|Propeller|Protopage|106|button|label|Pusha|107|posta|Scoopeo|scoop|Segnalo|She|Told|Me|167|ShoutWire|108|Simpy|LinkAdd|Sitejot|109|addform|iSiteAdd|iSiteDes|Slashdot|SmakNews|110|SodaHead|168|partners|Sonico|169|Sphinn|Spurl|Squidoo|lensmaster|StartAid|111|AddBrowserLink|Detail|urlname|urltitle|Strands|112|tools|webpage||studiVZ|195|Suggest|Selection|StumbleUpon|Stumpedia|113|Stylehive|196|savebookmark|Svejo|170|submit_by_url|Tagza|115|Technorati|Technotizie|117|posta_ok|TellMyPolitician|171|ThisNext|pick|sociable|Tip|118|Transferr|197|198|enviar|119|199|bodytext|TwitThis|twit|Viadeo|120|shareit|Virb|172||Vodpod|121|add_video_page|WebNews|122|einstellen|Wikio|vote|windows|Windows|Live|https|live|marklet|mkt|Amazon|WishList|123|amazon|||Wists|124|Worio||173|wref|Wovre|174|link_url|Wykop|175|dodaj|Xanga|private|editorx|Xerpi|125|block|add_link_from_extension|Bookmarks|toolbar|savebm|opener|tb|yahoobuzz|Buzz|buzz|submitUrl|submitHeadline|Yammer|176|Yigg|exturl|exttitle|126|tag|url_value|Yorumcuyum|177|baslik|YouMob|178|mobit|mob|hasBookmark|setDefaults|addSite|getSites|addClass|_changeBookmark|length|push|bookmark_list|bookmark_compact|onclick|number|position|transparent|repeat|floor|max|img||alt|middle|opera|safari|baseline|xa0|mailto|parent|offset|outerHeight|toggle|hide|_destroyBookmark|removeClass|empty|removeData|alert|for|in|Array|slice|call|arguments|_|concat'.split('|'),0,{}))

/*


   Magic Zoom Plus v1.7.3 
   Copyright 2009 Magic Toolbox
   You must buy a license to use this tool.
   Go to www.magictoolbox.com/magiczoomplus/


*/
eval(function(p,a,c,k,e,d){e=function(c){return(c<a?'':e(parseInt(c/a)))+((c=c%a)>35?String.fromCharCode(c+29):c.toString(36))};if(!''.replace(/^/,String)){while(c--){d[e(c)]=k[c]||e(c)}k=[function(e){return d[e]}];e=function(){return'\\w+'};c=1};while(c--){if(k[c]){p=p.replace(new RegExp('\\b'+e(c)+'\\b','g'),k[c])}}return p}('q 1b="1U";q W=5H.5z.2A();m(W.2i("2y")!=-1){1b="2y"}T{m(W.2i("1U")!=-1){1b="1U"}T{m(W.2i("4g")!=-1){1b="4g"}T{m(W.2i("cl")!=-1){1b="4w"}}}}q 48=1G 6Q();v 3o$(1I){G C.9n(1I)};v 1E(F,6L){m(F.4o){q y=F.4o[6L];y=J(y)?y:"1D"}T{m(1i.7n){q 8E=C.78.7n(F,12);q y=8E?8E[6L]:12}T{y=F.B[6L];y=J(y)?y:"1D"}}G y};v 6S(e){m(e.6c){q r=e.6c();q 5F=0;q 5I=0;m(C.1d&&(C.1d.2F||C.1d.2G)){5I=C.1d.2G;5F=C.1d.2F}T{m(C.1K&&(C.1K.2F||C.1K.2G)){5I=C.1K.2G;5F=C.1K.2F}}G{"M":r.M+5F,"L":r.L+5I,"16":r.16+5F,"1u":r.1u+5I}}};v 8t(e){q x=0;q y=0;m(1b=="1U"){y=e.3T;x=e.3U;m(C.1d&&(C.1d.2F||C.1d.2G)){y=e.3T+C.1d.2G;x=e.3U+C.1d.2F}T{m(C.1K&&(C.1K.2F||C.1K.2G)){y=e.3T+C.1K.2G;x=e.3U+C.1K.2F}}}T{y=e.3T;x=e.3U;y+=1i.3C;x+=1i.3P}G{"x":x,"y":y}};v 8y(){G P};q 7Y=v(){q 3M=1V;m(!3M[1]){3M=[7,3M[0]]}1y(q 7k 6y 3M[1]){3M[0][7k]=3M[1][7k]}G 3M[0]};v 3c(8r,8z,8C){m(1b=="4w"||1b=="2y"||1b=="4g"){3f{8r.8w(8z,8C,P)}3a(e){}}T{m(1b=="1U"){8r.68("4l"+8z,8C)}}};v 8K(8e,7P,88){m(1b=="4w"||1b=="2y"||1b=="4g"){8e.8s(7P,88,P)}T{m(1b=="1U"){8e.8V("4l"+7P,88)}}};v ac(){q 85=[];1y(q i=0;i<1V.1h;i++){1y(q j=0;j<1V[i].1h;j++){85.3u(1V[i][j])}}G 85};v ai(80,am){82=[];1y(q i=am;i<80.1h;i++){82.3u(80[i])}G 82};v 3i(84,ad){q 9V=ai(1V,2);G v(){84[ad].4u(84,ac(9V,1V))}};v 4G(e){m(1b=="4w"||1b=="4g"||1b=="2y"){e.7C=V;e.7u();e.7v()}T{m(1b=="1U"){1i.8R.7C=V}}};v 22(9w,9E,9Q,9R,9T){7.7p="2.4.2";7.4P=P;7.1H=3o$(9w);7.1a=3o$(9E);7.U=3o$(9Q);7.1m=3o$(9R);7.1A=0;7.Z=9T;m(!7.Z["3I"]){7.Z["3I"]=""}7.3l=0;7.2H=0;7.1Z=0;7.2j=0;7.2k=20;7.cd=20;7.3r=0;7.3N=0;7.3Q="";7.24=12;m(7.Z["8G"]!=""){7.24=C.1s("5t");7.24.B.X="1q";7.24.B.1g="1t";7.24.2X="aW";7.24.B.1p="1J";7.24.B.9q="4r";7.24.2V=7.Z["8j"]+"<br/><1o 1v=\\"0\\" 4H=\\""+7.Z["8j"]+"\\" 1P=\\""+7.Z["8G"]+"\\"/>";7.1H.1k(7.24)}7.bV="";7.6W=P;48.3u(7);7.8i=3i(7,"6e");7.8p=3i(7,"4z")};22.28.ar=v(){8K(1i.C,"4z",7.8i);8K(7.1H,"4z",7.8p);m(7.Z["X"]=="4q"){3o$(7.1H.1I+"-8O").2T(7.U)}T{7.1H.2T(7.U)}7.1H.2T(7.1A)};22.28.6e=v(e){q r=8t(e);q x=r["x"];q y=r["y"];q 43=0;q 42=0;q 2e=7.1a;2Q(2e&&2e.2S!="bb"&&2e.2S!="ba"){43+=2e.5P;42+=2e.66;2e=2e.5b}m(1b=="1U"){q r=6S(7.1a);42=r["M"];43=r["L"]}42+=J(1E(7.1a,"4Z"));43+=J(1E(7.1a,"7D"));m(1b!="1U"||!(C.1Y&&"3s"==C.1Y.2A())){42+=J(1E(7.1a,"3z"));43+=J(1E(7.1a,"74"))}m(x>J(42+7.1Z)){7.4I();G P}m(x<J(42)){7.4I();G P}m(y>J(43+7.2j)){7.4I();G P}m(y<J(43)){7.4I();G P}m(1b=="1U"){7.1H.B.1C=1}G V};22.28.70=v(e){4G(e);7.1H.B.4W="bf"};22.28.8x=v(e){4G(e);7.1H.B.4W="7B"};22.28.4z=v(e){4G(e);1y(i=0;i<48.1h;i++){m(48[i]!=7){48[i].6e(e)}}m(7.Z&&7.Z["73"]==V){m(7.1H.B.4W!="bf"){G}}m(7.4P){G}m(!7.6e(e)){G}7.4P=V;q bg=7.1a;q 4F=0;q 4B=0;m(1b=="4w"||1b=="2y"||1b=="4g"){q 2e=bg;2Q(2e&&2e.2S!="bb"&&2e.2S!="ba"){4B+=2e.5P;4F+=2e.66;2e=2e.5b}}T{q r=6S(7.1a);4F=r["M"];4B=r["L"]}4F+=J(1E(7.1a,"4Z"));4B+=J(1E(7.1a,"7D"));m(1b!="1U"||!(C.1Y&&"3s"==C.1Y.2A())){4F+=J(1E(7.1a,"3z"));4B+=J(1E(7.1a,"74"))}q r=8t(e);q x=r["x"];q y=r["y"];7.3r=x-4F;7.3N=y-4B;m((7.3r+7.2k/2)>=7.1Z){7.3r=7.1Z-7.2k/2}m((7.3N+7.2D/2)>=7.2j){7.3N=7.2j-7.2D/2}m((7.3r-7.2k/2)<=0){7.3r=7.2k/2}m((7.3N-7.2D/2)<=0){7.3N=7.2D/2}2L(3i(7,"7m"),10)};22.28.7m=v(){q 4X=7.3r-7.2k/2;q 52=7.3N-7.2D/2;q 5D=4X*(7.3l/7.1Z);q 5T=52*(7.2H/7.2j);m(C.1K.c6=="d8"){5D=(7.3r+7.2k/2-7.1Z)*(7.3l/7.1Z)}4X+=J(1E(7.1a,"4Z"));52+=J(1E(7.1a,"7D"));m(1b!="1U"||!(C.1Y&&"3s"==C.1Y.2A())){4X+=J(1E(7.1a,"3z"));52+=J(1E(7.1a,"74"))}7.1A.B.M=4X+"1n";7.1A.B.L=52+"1n";7.1A.B.1g="23";m((7.3l-5D)<J(7.U.B.H)){5D=7.3l-J(7.U.B.H)}q 56=0;m(7.Z&&7.Z["3I"]!=""){q 56=19}m(7.2H>(J(7.U.B.N)-56)){m((7.2H-5T)<(J(7.U.B.N)-56)){5T=7.2H-J(7.U.B.N)+56}}7.1m.B.M=(-5D)+"1n";7.1m.B.L=(-5T)+"1n";7.U.B.L=7.3Q;7.U.B.1p="1J";7.U.B.1g="23";7.1m.B.1p="1J";7.1m.B.1g="23";7.4P=P};v 9r(7h){q 7J="";1y(i=0;i<7h.1h;i++){7J+=4d.9F(14^7h.9u(i))}G 7J};22.28.4I=v(){m(7.Z&&7.Z["7s"]==V){G}m(7.1A){7.1A.B.1g="1t"}7.U.B.L="-49";m(1b=="1U"){7.1H.B.1C=0}};22.28.7F=v(){7.2k=J(7.U.B.H)/(7.3l/7.1Z);m(7.Z&&7.Z["3I"]!=""){7.2D=(J(7.U.B.N)-19)/(7.2H/7.2j)}T{7.2D=J(7.U.B.N)/(7.2H/7.2j)}m(7.2k>7.1Z){7.2k=7.1Z}m(7.2D>7.2j){7.2D=7.2j}7.2k=1j.2c(7.2k);7.2D=1j.2c(7.2D);m(!(C.1Y&&"3s"==C.1Y.2A())){q bw=J(1E(7.1A,"4Z"));7.1A.B.H=(7.2k-2*bw)+"1n";7.1A.B.N=(7.2D-2*bw)+"1n"}T{7.1A.B.H=7.2k+"1n";7.1A.B.N=7.2D+"1n"}};22.28.aU=v(){7.1A=C.1s("5t");7.1A.2X="bi";7.1A.B.1C=10;7.1A.B.1g="1t";7.1A.B.X="1q";7.1A.B["1x"]=41(7.Z["1x"]/2d);7.1A.B["-bU-1x"]=41(7.Z["1x"]/2d);7.1A.B["-8M-1x"]=41(7.Z["1x"]/2d);7.1A.B["4E"]="b0(bH="+7.Z["1x"]+")";7.1H.1k(7.1A);7.7F();7.1H.bA="4l";7.1H.B.bj="2o";7.1H.bl=8y;7.1H.bm=8y};22.28.8o=v(ak){q 9x=7.1m.1P;m(7.2H<J(7.U.B.N)){7.U.B.N=7.2H+"1n";m(7.Z&&7.Z["3I"]!=""){7.U.B.N=(19+7.2H)+"1n"}}m(7.3l<J(7.U.B.H)){7.U.B.H=7.3l+"1n"}m(ak){G}2Q(7.U.2v){7.U.2T(7.U.2v)}m(1b=="1U"){q f=C.1s("bJ");f.B.M="1D";f.B.L="1D";f.B.X="1q";f.1P="86:\'\'";f.B.4E="9M:9N.aq.bO(B=0,1x=0)";f.B.H=7.U.B.H;f.B.N=7.U.B.N;f.bE=0;7.U.1k(f)}m(7.Z&&7.Z["3I"]!=""){q f=C.1s("5t");f.2X="5Z";f.1I="5Z"+7.U.1I;f.B.X="2x";f.B.1C=10;f.B.M="1D";f.B.L="1D";f.B.2a="bv";f.2V=7.Z["3I"];7.U.1k(f)}q 6V=C.1s("5t");6V.B.3W="1t";7.U.1k(6V);7.1m=C.1s("3E");7.1m.1P=9x;7.1m.B.X="2x";7.1m.B.9v="1D";7.1m.B.2a="1D";7.1m.B.M="1D";7.1m.B.L="1D";6V.1k(7.1m);m("1F"!==4t(2n)){q 4y=9r(2n[0]);q f=C.1s("3y");f.B.6D=2n[1];f.B.bt=2n[2]+"1n";f.B.bs=2n[3];f.B.bx="9D";f.B.X="1q";f.B.H=2n[5];f.B.9q=2n[4];f.2V=4y;f.B.M="1D";f.B.L=J(7.U.B.N)-2n[6]+"1n";7.U.1k(f)}};22.28.4O=v(){m(7.24!=12&&(!7.1m.64||0==7.1m.H||0==7.1m.N)&&7.1a.H!=0&&7.1a.N!=0){7.24.B.M=(J(7.1a.H)/2-J(7.24.6a)/2)+"1n";7.24.B.L=(J(7.1a.N)/2-J(7.24.6b)/2)+"1n";7.24.B.1g="23"}m(1b=="4g"){m(!7.6W){3c(7.1m,"4f",3i(7,"4O"));7.6W=V;G}}T{m(!7.1m.64||!7.1a.64){2L(3i(7,"4O"),2d);G}}7.1m.B.9v="1D";7.1m.B.2a="1D";7.3l=7.1m.H;7.2H=7.1m.N;7.1Z=7.1a.H;7.2j=7.1a.N;m(7.3l==0||7.2H==0||7.1Z==0||7.2j==0){2L(3i(7,"4O"),2d);G}m(1b=="2y"||(1b=="1U"&&!(C.1Y&&"3s"==C.1Y.2A()))){7.1Z-=J(1E(7.1a,"3z"));7.1Z-=J(1E(7.1a,"4S"));7.2j-=J(1E(7.1a,"74"));7.2j-=J(1E(7.1a,"bB"))}m(7.24!=12){7.24.B.1g="1t"}7.1H.B.H=7.1a.H+"1n";7.U.B.L="-49";7.3Q="1D";q r=6S(7.1a);m(!r){7.U.B.M=7.1Z+J(1E(7.1a,"4Z"))+J(1E(7.1a,"bz"))+J(1E(7.1a,"3z"))+J(1E(7.1a,"4S"))+15+"1n"}T{7.U.B.M=(r["16"]-r["M"]+15)+"1n"}5f(7.Z["X"]){1z"M":7.U.B.M="-"+(15+J(7.U.B.H))+"1n";1w;1z"1u":m(r){7.3Q=r["1u"]-r["L"]+15+"1n"}T{7.3Q=7.1a.N+15+"1n"}7.U.B.M="1D";1w;1z"L":7.3Q="-"+(15+J(7.U.B.N))+"1n";7.U.B.M="1D";1w;1z"4q":7.U.B.M="1D";7.3Q="1D";1w;1z"6N":7.U.B.M="1D";7.3Q="1D";m(7.Z["76"]==-1){7.U.B.H=7.1Z+"1n"}m(7.Z["6B"]==-1){7.U.B.N=7.2j+"1n"}1w}m(7.1A){7.7F();7.8o(V);G}7.8o();7.aU();3c(1i.C,"4z",7.8i);3c(7.1H,"4z",7.8p);m(7.Z&&7.Z["73"]==V){3c(7.1H,"70",3i(7,"70"));3c(7.1H,"8x",3i(7,"8x"))}m(7.Z&&(7.Z["73"]==V||7.Z["7s"]==V)){7.3r=7.1Z/2;7.3N=7.2j/2;7.7m()}};22.28.aM=v(47,e){m(47.3S==7.1m.1P){G}q 5n=C.1s("3E");5n.1I=7.1m.1I;5n.1P=47.3S;q p=7.1m.4a;p.bu(5n,7.1m);7.1m=5n;7.1m.B.X="2x";7.1a.1P=47.aw;m(47.2K!=""&&3o$("5Z"+7.U.1I)){3o$("5Z"+7.U.1I).2v.9s=47.2K}m(7.Z["6B"]==-1){7.U.B.N="6F"}T{7.U.B.N=J(7.Z["6B"])+"1n"}m(7.Z["76"]==-1){7.U.B.H="6F"}T{7.U.B.H=J(7.Z["76"])+"1n"}7.6W=P;7.4O();7.1H.3S=47.3S;3f{E.b9()}3a(e){}};v 8Y(1I,7d){q 2I=1i.C.2Y("A");1y(q i=0;i<2I.1h;i++){m(2I[i].2R==1I){m(!2I[i].5A){3c(2I[i],"2z",v(at){m(1b!="1U"){7.97()}T{1i.4V()}4G(at);G P});3c(2I[i],7d.Z["9a"],3i(2I[i],"az"))}2I[i].B.7X="0";2I[i].5A=7Y;2I[i].5A({2C:7d,az:v(){7.2C.aM(7,12)}});q 1o=C.1s("3E");1o.1P=2I[i].3S;1o.B.X="1q";1o.B.M="-49";1o.B.L="-49";C.1d.1k(1o);1o=C.1s("3E");1o.1P=2I[i].aw;1o.B.X="1q";1o.B.M="-49";1o.B.L="-49";C.1d.1k(1o)}}};v bn(){2Q(48.1h>0){q 7j=48.5q();7j.ar();5M 7j}};v 8W(){q 8m="aD bk";q 8I="";q 4p=1i.C.2Y("3E");1y(q i=0;i<4p.1h;i++){m(/aW/.3j(4p[i].2X)){m(4p[i].4H!=""){8m=4p[i].4H}8I=4p[i].1P;1w}}q 1c=1i.C.2Y("A");1y(q i=0;i<1c.1h;i++){m(/22/.3j(1c[i].2X)){2Q(1c[i].2v){m(1c[i].2v.2S!="3E"){1c[i].2T(1c[i].2v)}T{1w}}m(1c[i].2v.2S!="3E"){bo"bp 22 bP!"}q 3Z=1j.2c(1j.bI()*bG);1c[i].B.X="2x";1c[i].B.1p="1J";1c[i].B.7X="0";1c[i].B.bq="2o";3c(1c[i],"2z",v(99){m(1b!="1U"){7.97()}4G(99);G P});m(1c[i].1I==""){1c[i].1I="by"+3Z}m(1b=="1U"){1c[i].B.1C=0}q 9f=1c[i].2v;9f.1I="9e"+3Z;q 2f=C.1s("5t");2f.1I="bc"+3Z;2t=1G 3J(/1x(\\s+)?:(\\s+)?(\\d+)/i);1B=2t.3G(1c[i].2R);q 79=50;m(1B){79=J(1B[3])}2t=1G 3J(/bC\\-bD(\\s+)?:(\\s+)?(2z|3h)/i);1B=2t.3G(1c[i].2R);q 8q="2z";m(1B){8q=1B[3]}2t=1G 3J(/2C\\-H(\\s+)?:(\\s+)?(\\w+)/i);q 7S=-1;1B=2t.3G(1c[i].2R);2f.B.H="6F";m(1B){2f.B.H=1B[3];7S=1B[3]}2t=1G 3J(/2C\\-N(\\s+)?:(\\s+)?(\\w+)/i);q 7H=-1;1B=2t.3G(1c[i].2R);2f.B.N="6F";m(1B){2f.B.N=1B[3];7H=1B[3]}2t=1G 3J(/2C\\-X(\\s+)?:(\\s+)?(\\w+)/i);1B=2t.3G(1c[i].2R);q 3n="16";m(1B){5f(1B[3]){1z"M":3n="M";1w;1z"1u":3n="1u";1w;1z"L":3n="L";1w;1z"4q":3n="4q";1w;1z"6N":3n="6N";1w}}2t=1G 3J(/bL\\-bM(\\s+)?:(\\s+)?(V|P)/i);1B=2t.3G(1c[i].2R);q 7g=P;m(1B){m(1B[3]=="V"){7g=V}}2t=1G 3J(/bN\\-bK\\-2C(\\s+)?:(\\s+)?(V|P)/i);1B=2t.3G(1c[i].2R);q 7c=P;m(1B){m(1B[3]=="V"){7c=V}}2f.B.3W="1t";2f.2X="bF";2f.B.1C=2d;2f.B.1g="1t";m(3n!="4q"){2f.B.X="1q"}T{2f.B.X="2x"}q 6p=C.1s("3E");6p.1I="93"+3Z;6p.1P=1c[i].3S;2f.1k(6p);m(3n!="4q"){1c[i].1k(2f)}T{3o$(1c[i].1I+"-8O").1k(2f)}q 8Z={7s:7c,73:7g,3I:1c[i].2K,1x:79,9a:8q,X:3n,8j:8m,8G:8I,76:7S,6B:7H};m(3n=="6N"){1c[i].2K=""}q 67=1G 22(1c[i].1I,"9e"+3Z,2f.1I,"93"+3Z,8Z);1c[i].5A=7Y;1c[i].5A({2C:67});67.4O();8Y(1c[i].1I,67)}}};m(1b=="1U"){3f{C.aH("aQ",P,V)}3a(e){}}3c(1i,"4f",8W);(v(){1i.k={7p:"1.13",1e:{2s:!!(1i.68&&!1i.2y),4J:!!(1i.68&&!1i.8N),cS:!!(1i.cR&&1i.8N),2y:!!1i.2y,au:5H.5z.2i("cQ/")>-1,4w:5H.5z.2i("cP")>-1&&5H.5z.2i("cT")==-1,cU:!!5H.5z.cY(/cX.*cW.*cV/),4Q:C.1Y&&"3s"==C.1Y.2A(),6H:P},$:v(F){m(!F){G 12}m("cO"==4t F){F=C.9n(F)}G F},$A:v(3p){m(!3p){G[]}m(3p.9l){G 3p.9l()}q 5p=3p.1h||0,7W=1G 6Q(5p);2Q(5p--){7W[5p]=3p[5p]}G 7W},2E:v(4b,7L){m("1F"===4t(4b)){G 4b}1y(q p 6y 7L){4b[p]=7L[p]}G 4b},7V:v(){q 7G=[];1y(q i=0,95=1V.1h;i<95;i++){1y(q j=0,94=1V[i].1h;j<94;j++){7G.3u(1V[i][j])}}G 7G},2g:v(){q 6K=k.$A(1V),9h=6K.6M(),98=6K.6M();G v(){G 9h.4u(98,k.7V(6K,k.$A(1V)))}},3b:v(){q 6C=k.$A(1V),9d=6C.6M(),9k=6C.6M();G v(9j){G 9d.4u(9k,k.7V([9j||1i.8R],6C))}},5m:v(2p,3p){q 4T=3p.1h;1y(q i=0;i<4T;i++){m(2p===3p[i]){G V}}G P},4i:v(){G 1G cN().cG()},b1:v(F){G(/^(?:1d|8M)$/i).3j(F.2S)},5L:v(){q 5s,5e,5X,62,8n,8l;q 45=(!k.1e.4Q)?C.1K:C.1d;q 36=C.1d;5s=(1i.63&&1i.8P)?1i.63+1i.8P:(36.5N>36.6a)?36.5N:(k.1e.2s&&k.1e.4Q)?36.5N:36.6a;5e=(1i.5r&&1i.91)?1i.5r+1i.91:(36.8U>36.6b)?36.8U:36.6b;q 5Y,6w;5Y=k.1e.2s?45.5N:(C.1K.8F||1T.63),6w=k.1e.2s?45.5R:(C.1K.5R||1T.5r);8n=(1T.3P)?1T.3P:45.2F;8l=(1T.3C)?1T.3C:45.2G;m(5e<6w){5X=6w}T{5X=5e}m(5s<5Y){62=5Y}T{62=5s}G{8h:62,8g:5X,H:k.1e.2s?45.8F:(C.1K.8F||1T.63),N:k.1e.2s?45.5R:(k.1e.2y)?1T.5r:(1T.5r||C.1K.5R),2l:8n,2m:8l,cF:5s,cE:5e}},1f:{2P:v(F,6d,5g){m(F===C&&"8X"==6d){m(k.1e.6H){5g.cD(7);G}k.5x.3u(5g);m(k.5x.1h<=1){k.bh()}}F=k.$(F);m(F.8w){F.8w(6d,5g,P)}T{F.68("4l"+6d,5g)}},3R:v(F,8u,7U){F=k.$(F);m(F.8s){F.8s(8u,7U,P)}T{F.8V("4l"+8u,7U)}},2u:v(46){m(46.7v){46.7v()}T{46.7C=V}m(46.7u){46.7u()}T{46.cH=P}},7K:v(F,7q,7x){F=k.$(F);m(F==C&&C.6R&&!F.9g){F=C.1K}q 3F;m(C.6R){3F=C.6R(7q);3F.cI(7x,V,V)}T{3F=C.cM();3F.cL=7q}m(C.6R){F.9g(3F)}T{F.cK("4l"+7x,3F)}G 3F}},4d:{96:v(s){G s.3x(/^\\s+|\\s+$/g,"")},6g:v(s){G s.3x(/-(\\D)/g,v(cJ,9b){G 9b.cZ()})}},u:{5V:v(F,9c){m(!(F=k.$(F))){G}G((" "+F.2X+" ").2i(" "+9c+" ")>-1)},2B:v(F,7b){m(!(F=k.$(F))){G}m(!k.u.5V(F,7b)){F.2X+=(F.2X?" ":"")+7b}},4x:v(F,9m){m(!(F=k.$(F))){G}F.2X=k.4d.96(F.2X.3x(1G 3J("(^|\\\\s)"+9m+"(?:\\\\s|$)"),"$1"))},Y:v(F,3A){F=k.$(F);3A=3A=="7R"?"92":k.4d.6g(3A);q 2p=F.B[3A];m(!2p&&C.78){q 7o=C.78.7n(F,12);2p=7o?7o[3A]:12}T{m(!2p&&F.4o){2p=F.4o[3A]}}m("1x"==3A){G 2p?41(2p):1}m(/^(1v(9i|9o|8L|8Q)d0)|((2a|5u)(9i|9o|8L|8Q))$/.3j(3A)){2p=J(2p)?2p:"1D"}G 2p=="3t"?12:2p},O:v(F,4A){v 8T(s,n){m("df"===4t(n)&&!("1C"===s||"2C"===s)){G"1n"}G""};F=k.$(F);q 6t=F.B;1y(q s 6y 4A){3f{m("1x"===s){k.u.9S(F,4A[s]);5O}m("7R"===s){6t[("1F"===4t(6t.8S))?"92":"8S"]=4A[s];5O}6t[k.4d.6g(s)]=4A[s]+8T(k.4d.6g(s),4A[s])}3a(e){}}G F},9S:v(F,3e){F=k.$(F);q 3K=F.B;3e=41(3e);m(3e==0){m("1t"!=3K.1g){3K.1g="1t"}}T{m(3e>1){3e=41(3e/2d)}m("23"!=3K.1g){3K.1g="23"}}m(!F.4o||!F.4o.de){3K.2C=1}m(k.1e.2s){3K.4E=(3e==1)?"":"b0(1x="+3e*2d+")"}3K.1x=3e;G F},1X:v(F){F=k.$(F);G{"H":F.6a,"N":F.6b}},b5:v(F){F=k.$(F);q p={x:0,y:0};2Q(F&&!k.b1(F)){p.x+=F.2F;p.y+=F.2G;F=F.4a}G p},2W:v(F,5Q){5Q=5Q||P;F=k.$(F);m(F.6c){q b=F.6c();q 5C=(!k.1e.4Q)?C.1K:C.1d;G{"L":b.L+(1T.3C||5C.2G)-5C.dd,"M":b.M+(1T.3P||5C.2F)-5C.dg}}q s=k.u.b5(F);q l=0,t=0;dh{l+=F.66||0;t+=F.5P||0;F=F.5b;m(5Q){2Q(F&&"2x"==F.B.X){F=F.5b}}}2Q(F);G{"L":t-s.y,"M":l-s.x}},3O:v(F,ax){q p=k.u.2W(F,ax);q s=k.u.1X(F);G{"L":p.L,"1u":p.L+s.N,"M":p.M,"16":p.M+s.H}},dl:v(F,c){F=k.$(F);m(F){F.2V=c}}},2M:{5h:v(x){G x},6o:v(x){G-(1j.aL(1j.aF*x)-1)/2},7r:v(p){G 1j.6Z(p,2)},dk:v(p){G 1-k.2M.7r(1-p)},av:v(p){G 1j.6Z(p,3)},dj:v(p){G 1-k.2M.av(1-p)},aE:v(p,x){x=x||1.di;G 1j.6Z(p,2)*((x+1)*p-x)},dc:v(p,x){G 1-k.2M.aE(1-p)},db:v(p,x){x=x||[];G 1j.6Z(2,10*--p)*1j.aL(20*p*1j.aF*(x[0]||1)/3)},2o:v(x){G 0}},5x:[],4s:12,4j:v(){m(k.1e.6H){G}k.1e.6H=V;m(k.4s){8c(k.4s)}1y(q i=0,l=k.5x.1h;i<l;i++){k.5x[i].4u(C)}},bh:v(){m(k.1e.au){(v(){m(k.5m(C.d4,["6v","64"])){k.4j();G}k.4s=2L(1V.6Y,50);G})()}m(k.1e.2s&&1i==L){(v(){3f{C.1K.d3("M")}3a(e){k.4s=2L(1V.6Y,50);G}k.4j()})()}m(k.1e.2y){k.1f.2P(C,"aX",v(){1y(q i=0,l=C.aB.1h;i<l;i++){m(C.aB[i].d2){k.4s=2L(1V.6Y,50);G}k.4j()}})}k.1f.2P(C,"aX",k.4j);k.1f.2P(1i,"4f",k.4j)}};k.3m=v(){7.4c.4u(7,1V)};k.3m.28={65:{aO:50,2r:0.5,2h:k.2M.6o,44:v(){},3V:v(){},aG:v(){}},K:{},4c:v(F,5W){7.F=F;7.K=k.2E(k.2E({},7.65),5W);7.55=P},7t:v(3q,d){G(3q[1]-3q[0])*d+3q[0]},3B:v(aS){7.6E=aS;7.d1=0;7.d5=0;7.7z=k.4i();7.aI=7.7z+7.K.2r*5E;7.55=d6(k.2g(7.aJ,7),1j.2c(5E/7.K.aO));7.K.44()},aJ:v(){q 4i=k.4i();m(4i>=7.aI){m(7.55){da(7.55);7.55=P}7.7A(1);2L(7.K.3V,10);7.K.3V=v(){};G 7}q 58=7.K.2h((4i-7.7z)/(7.K.2r*5E));7.7A(58)},7A:v(58){q 51={};1y(q s 6y 7.6E){m("1x"===s){51[s]=1j.2c(7.7t(7.6E[s],58)*2d)/2d}T{51[s]=1j.2c(7.7t(7.6E[s],58))}}7.K.aG(51);k.u.O(7.F,51)}};m(!6Q.28.2i){k.2E(6Q.28,{"2i":v(aK,72){q 4T=7.1h;1y(q i=(72<0)?1j.aZ(0,4T+72):72||0;i<4T;i++){m(7[i]===aK){G i}}G-1}})}})();q E={7p:"1.5.17",2Z:[],2U:[],1C:aP,2b:P,65:{2h:k.2M.7r,1C:aP,2r:0.5,7M:P,4e:P,2N:"4r",21:{"L":0,"M":0,"1u":0,"16":0},4v:"2z",6U:0.5,6J:0,aV:"#d9",8B:0.2,b7:V,8v:P,4N:0.25,54:"6z",8b:V,3Y:"L 16",8J:["6h","6k","6r"],aA:V,9p:"aD...",aY:0.75,af:V,b3:V},K:{},9G:{"6h":{1l:0,2K:"d7"},"6k":{1l:1,2K:"cB"},"6r":{1l:2,2K:"cC"}},4c:v(6n){6n=6n||P;7.K=k.2E(7.65,7.K);q ay=/(3t|4r|1q|2x)/i.3G(7.K.2N);5f(ay[1]){1z"3t":7.K.2N="3t";1w;1z"1q":7.K.2N="1q";1w;1z"2x":7.K.2N="2x";1w;1z"4r":7B:7.K.2N="4r";1w}7.K.4v=/3h/i.3j(7.K.4v)?"3h":"2z";7.1C=7.K.1C;q as=C.2Y("a");q l=as.1h;q aC=0;1y(q i=0;i<l;i++){m(k.u.5V(as[i],"E")){E.2Z.3u(1G E.61(as[i],12,aC++,{ao:(7.K.c5||7.K.2r),a1:(7.K.c4||7.K.2r),4N:7.K.4N,54:7.K.54,2h:7.K.2h,4e:7.K.4e,4v:7.K.4v,6U:7.K.6U,2N:7.K.2N,21:7.K.21}))}}m(!6n&&E.K.aA){k.1f.2P(C,"c3",v(e){q t=E.30();m(t!=12&&1F!=t){q r=k.u.3O(t.I);m((e.3U>=r.M&&e.3U<=r.16)&&(e.3T>=r.L&&e.3T<=r.1u)){k.1f.2u(e);G P}}})}},2u:v(){1y(q t=E.2Z.5q();t!=12&&1F!=t;t=E.2Z.5q()){t.b2();5M t}E.2Z=[];E.2U=[]},b9:v(){7.2u();2L(v(){E.4c(V)},10);G},4L:v(e,2J){m(e){k.1f.2u(e)}q t=E.30(),6l=E.3v(2J);m(1F==6l){G}m(!E.K.7M&&1F!=t&&2J!=t.1l){t.3H(12,6l,V)}T{6l.4L(7.1C)}},9X:v(2J){q 1M=7.2U.2i(2J);m(-1!==1M){7.2U.b8(1M,1)}7.2U.3u(2J)},30:v(){G(7.2U.1h>0)?7.3v(7.2U[7.2U.1h-1]):1F},9Z:v(2J){q 1M=7.2U.2i(2J);m(-1===1M){G}7.2U.b8(1M,1)},3v:v(2J){q 7w=1F;1y(q i=0,l=E.2Z.1h;i<l;i++){m(2J==E.2Z[i].1l){7w=E.2Z[i];1w}}G 7w},5i:v(6u){6u=6u||12;q 7y=[];1y(q i=0,l=E.2Z.1h;i<l;i++){m(6u==E.2Z[i].3d){7y.3u(E.2Z[i].1l)}}G 7y.c7(v(a,b){G a-b})},7E:v(7a,6j){7a=7a||12;6j=6j||P;q 5c=E.5i(E.30().3d);q 1M=5c.2i(E.30().1l)+1;G(1M>=5c.1h)?(!6j)?1F:E.3v(5c[0]):E.3v(5c[1M])},77:v(7i,69){7i=7i||12;69=69||P;q 5j=E.5i(E.30().3d);q 1M=5j.2i(E.30().1l)-1;G(1M<0)?(!69)?1F:E.3v(5j[5j.1h-1]):E.3v(5j[1M])},9I:v(6i){6i=6i||12;q 7e=E.5i(6i);G(7e.1h)?E.3v(7e[0]):1F},9J:v(6f){6f=6f||12;q 6P=E.5i(6f);G(6P.1h)?E.3v(6P[6P.1h-1]):1F},5a:v(e){m(!E.K.b7){k.1f.3R(C,"5U",E.5a);G V}q b6=e.c8,w=12,r=P;5f(b6){1z 27:w=0;1w;1z 32:w=1;r=V;1w;1z 34:w=1;1w;1z 33:w=-1;1w;1z 39:1z 40:m((E.K.8v)?(e.be||e.bd):V){w=1}1w;1z 37:1z 38:m((E.K.8v)?(e.be||e.bd):V){w=-1}1w}m(12!==w){m(E.2U.1h>0){k.1f.2u(e)}3f{q 3q=E.30();q 5d=12;m(0==w){3q.3H(12)}T{m(-1==w){5d=E.77(3q.3d,r)}T{m(1==w){5d=E.7E(3q.3d,r)}}}m(1F!=5d){3q.3H(12,5d)}}3a(e){m(b4){b4.cc(e.cb)}}}},6I:v(F){m(k.1e.2y){k.u.O(F,{"4W":"9H"})}},al:v(){m(E.2b&&"2o"!=k.u.Y(E.2b,"1p")){G}m(!E.2b){E.2b=C.1s("3y");k.u.2B(E.2b,"E-ca");q R=k.5L();k.u.O(E.2b,{"X":"1q","1p":"1J","L":0,"M":0,"z-1l":(E.1C-1),"H":R.8h,"N":R.8g,"4M-6D":E.K.aV,"1x":0});q 6s=C.1s("4D");6s.1P="86:\\"\\";";k.u.O(6s,{"H":"2d%","N":"2d%","1p":"1J","4E":"9y()","L":0,"c9":0,"X":"1q","z-1l":-1,"1v":"2o"});E.2b.1k(6s);C.1d.1k(E.2b);k.1f.2P(1i,"c2",v(){q R=k.5L();k.u.O(E.2b,{"H":R.H,"N":R.N});2L(v(){q R=k.5L();k.u.O(E.2b,{"H":R.8h,"N":R.8g})},1)})}1G k.3m(E.2b,{2r:E.K.8B,2h:k.2M.5h,44:v(){k.u.O(E.2b,{"1p":"1J","1x":0})}}).3B({"1x":[0,E.K.6J]})},9Y:v(){1G k.3m(E.2b,{2r:E.K.8B,2h:k.2M.5h,3V:v(){k.u.O(E.2b,{"1p":"2o"})}}).3B({"1x":[E.K.6J,0]})}};E.61=v(){7.4c.4u(7,1V)};E.61.28={4c:v(a,aT,2J,5W){7.K={};7.1r=a;7.1l=2J;7.3d=aT;7.26=P;7.4K=P;7.57=P;7.S=P;7.Q=P;7.1L=P;7.I=P;7.5o=[];7.5v=12;7.cr=12;7.89=V;7.6v=P;q 1o=12;3f{1o=7.1r.2Y("1o")[0]}3a(e){}m(1o){q aR=k.u.3O(1o)}T{q aR=k.u.3O(7.1r)}7.2q=C.1s("3y");k.u.2B(7.2q,"E-c1");k.u.O(7.2q,{"1p":"1J","3W":"1t","1x":E.K.aY,"X":"1q","bQ-9B":"bT","1g":"1t","aZ-H":(aR.16-aR.M-4)});m(k.1e.2s&&k.1e.4Q){k.u.O(7.2q,{"H":(aR.16-aR.M-4)})}7.2q.1k(C.bS(E.K.9p));C.1d.1k(7.2q);k.u.O(7.2q,{"L":1j.2c(aR.1u-(aR.1u-aR.L)/2-k.u.1X(7.2q).N/2),"M":1j.2c(aR.16-(aR.16-aR.M)/2-k.u.1X(7.2q).H/2)});7.8A=k.2g(v(e){m(!7.6v){k.1f.2u(e);k.u.O(7.2q,{"1g":"23"});G}k.1f.3R(7.1r,"2z",7.8A);7.bR=12},7);k.1f.2P(7.1r,"2z",7.8A);7.K=k.2E(7.K,5W);7.7N=k.2g(7.9P,7);m(E.K.b3){7.9K()}},b2:v(){m(7.5v){8c(7.5v);7.5v=12}1y(q c=7.5o.5q();c!=12&&1F!=c;c=7.5o.5q()){k.1f.3R(c.4b,c.aN,c.ap);5M c}5M 7.5o;m(k.5m(7.2q,k.$A(C.1d.2Y(7.2q.2S)))){C.1d.2T(7.2q)}m(7.I&&!k.1e.2s){7.I.1P=12}m(!7.26){m(k.5m(7.I,k.$A(C.1d.2Y(7.I.2S)))){C.1d.2T(7.I)}}T{k.u.4x(7.1r,"E-26");k.u.O(7.1N,{"1g":"23"});E.6I(7.1r)}7.5S();m(k.5m(7.S,k.$A(C.1d.2Y(7.S.2S)))){C.1d.2T(7.S)}},2w:v(F,8D,8H){k.1f.2P(F,8D,8H);7.5o.3u({"4b":F,"aN":8D,"ap":8H})},9K:v(){7.I=C.1s("1o");k.u.O(7.I,{"X":"1q","L":-3k});7.I=C.1d.1k(7.I);7.2w(7.I,"4f",7.7N);7.5v=2L(k.2g(v(){7.I.1P=7.1r.3S},7),1)},9A:v(){7.1L=C.1s("3y");k.u.O(7.1L,{"X":"1q","L":-3k,"1g":"1t","z-1l":11});k.u.2B(7.1L,"E-1L");7.S.1k(7.1L);q bW=[];q 4C=7.K.8J||E.K.8J;q 9L=4C.1h;1y(q i=0;i<9L;i++){m("6k"==4C[i]&&E.9J(7.3d)===7){5O}m("6h"==4C[i]&&E.9I(7.3d)===7){5O}q 7Q=E.9G[4C[i]];q 1Q=C.1s("a");1Q.2K=7Q.2K;1Q.3S="#";1Q.2R=4C[i];k.u.O(1Q,{"7R":"M","X":"2x"});1Q=7.1L.1k(1Q);q w=-7Q.1l*J(k.u.Y(1Q,"H"));q h=J(k.u.Y(1Q,"N"));q 31=C.1s("6z");k.u.O(31,{"M":w,"4W":"9H"});1Q.1k(31);q 4h=C.1s("1o");k.u.O(4h,{"X":"1q","L":-a0});4h=C.1d.1k(4h);k.1f.2P(4h,"4f",k.2g(v(1o){k.1f.3R(1o,"4f",1V.6Y);k.u.O(7,{"H":1o.H,"N":1o.N});C.1d.2T(1o)},31,4h));4h.1P=k.u.Y(31,"4M-2O").3x(/7T\\s*\\(\\s*\\"{0,1}([^\\"]*)\\"{0,1}\\s*\\)/i,"$1");m(k.1e.4J){q 6T=k.u.Y(31,"4M-2O");6T=6T.3x(/7T\\s*\\(\\s*"(.*)"\\s*\\)/i,"$1");31.B.1p="8a-1J";k.u.O(31,{"z-1l":1,"X":"2x"});31.B.4E="9M:9N.aq.c0(1P=\'"+6T+"\', bZ=\'bY\')";31.B.bX="2o"}7.2w(1Q,"3h",k.3b(v(e,w,h){k.u.O(7.2v,{"M":w,"L":h})},1Q,w,-h));7.2w(1Q,"8d",k.3b(v(e,w,h){k.u.O(7.2v,{"M":w,"L":0})},1Q,w));7.2w(1Q,"2z",k.3b(7.a8,7));m("6r"==1Q.2R&&/M/i.3j(7.K.3Y||E.K.3Y)&&7.1L.2v!==1Q){1Q=7.1L.an(1Q,7.1L.2v)}}m(k.1e.4J){7.4k=C.1s("3y");k.u.O(7.4k,{"X":"1q","L":-3k,"z-1l":4,"H":18,"N":18,"4M-2O":"7T("+7.I.1P+")","1g":"23","1p":"1J","4M-9O":"ce-9O"});7.S.1k(7.4k)}},9P:v(){v 9C(8f){q 7O="";1y(i=0;i<8f.1h;i++){7O+=4d.9F(14^8f.9u(i))}G 7O};v 6G(4y){q 9t=/\\[a([^\\]]+)\\](.*?)\\[\\/a\\]/cv;G 4y.3x(9t,"<a $1>$2</a>")};k.1f.3R(7.I,"4f",7.7N);7.S=C.1s("3y");k.u.O(7.S,{"X":"1q","1p":"1J","1g":"1t"});k.u.2B(7.S,"E-cu");C.1d.1k(7.S);7.1N=7.1r.2Y("1o")[0];m(!7.1N){7.1N=C.1s("1o");7.1N.1P="9s:2O/ct;cs,cw==";k.u.O(7.1N,{"H":0,"N":0,"1x":0});7.1r.1k(7.1N)}7.Q=C.1s("3y");m("1o:4H"==7.K.54.2A()&&""!=(7.1N.4H||"")){7.Q.2V=6G(7.1N.4H);7.57=V;k.u.O(7.Q,{"X":"1q","1p":"1J","3W":"1t","L":-3k});k.u.2B(7.Q,"E-Q")}T{m("1o:2K"==7.K.54.2A()&&""!=(7.1N.2K||"")){7.Q.2V=6G(7.1N.2K);7.57=V;k.u.O(7.Q,{"X":"1q","1p":"1J","3W":"1t","L":-3k});k.u.2B(7.Q,"E-Q")}T{m(7.1r.2Y("6z").1h){7.57=V;7.Q.2V=6G(7.1r.2Y("6z")[0].2V.3x(/&cx;/g,"&").3x(/&cA;/g,"<").3x(/&cz;/g,">"));k.u.O(7.Q,{"X":"1q","1p":"1J","3W":"1t","L":-3k});k.u.2B(7.Q,"E-Q")}}}m(""==7.Q.2V){k.u.O(7.Q,{"6x-5K":0,"N":0,"7X":"2o","1v":"2o","cy-N":0})}7.S.1k(7.Q);k.2E(7.Q,{3z:J(k.u.Y(7.Q,"2a-M")),4S:J(k.u.Y(7.Q,"2a-16"))});q 59={1M:k.u.2W(7.1N),5K:k.u.1X(7.1N)};k.2E(7.I,{"ae":7.I.H,"29":7.I.N,"4Y":59.1M.L,"4U":59.1M.M,"71":59.5K.H,"9W":59.5K.N,"3w":7.I.H,"3L":7.I.N,"5J":7.I.H/7.I.N});k.u.2B(7.I,"E-2O");k.2E(7.I,{"6O":k.u.1X(7.I).H,"cq":k.u.1X(7.I).N});k.u.2B(7.I,"E-2O-26");k.u.O(7.Q,{"H":7.I.6O-7.Q.3z-7.Q.4S-J(k.u.Y(7.I,"1v-M-H"))-J(k.u.Y(7.I,"1v-16-H"))-J(k.u.Y(7.Q,"1v-M-H"))-J(k.u.Y(7.Q,"1v-16-H")),"2a-M":7.Q.3z+J(k.u.Y(7.I,"1v-M-H")),"2a-16":7.Q.4S+J(k.u.Y(7.I,"1v-16-H"))});k.u.4x(7.I,"E-2O-26");m(k.1e.2s&&(C.1Y&&"3s"==C.1Y.2A())){k.u.O(7.Q,{"H":7.I.6O})}k.2E(7.Q,{"29":k.u.1X(7.Q).N});k.u.O(7.I,{1p:"2o"});m("1F"!==4t(2n)){q 4y=9C(2n[0]);q f=C.1s("3y");k.u.O(f,{"1p":"8a","3W":"1t","1g":"23","6D":2n[1],"6x-5K":2n[2],"6x-cp":2n[3],"6x-ci":"9D","X":"1q","H":(7.I.6O*0.9),"ch-9B":"16","16":15,"L":7.I.29-20,"z-1l":10});f.2V=4y;m(f.87&&1==f.87.cg){k.u.O(f.87,{"1p":"8a","1g":"23","6D":2n[1]})}7.S.1k(f);k.u.O(f,{"H":"90%","L":7.I.29-k.u.1X(f).N-8});7.cr=f}m(V===(7.K.8b||E.K.8b)){7.9A();7.2w(7.S,"3h",k.3b(7.6q,7,V));7.2w(7.S,"8d",k.3b(7.6q,7))}k.u.O(7.S,{"1p":"2o"});m("3h"==7.K.4v){7.2w(7.1r,"3h",k.3b(v(e){k.1f.2u(e);7.6X=2L(k.2g(E.4L,E,12,7.1l),7.K.6U*5E);7.2w(7.1r,"8d",k.3b(v(){k.1f.2u(e);m(7.6X){8c(7.6X);7.6X=P}},7))},7))}T{7.2w(7.1r,"2z",v(){});7.2w(7.1r,"2z",k.3b(E.4L,E,7.1l))}7.3X=C.1s("3y");k.u.O(7.3X,{"1p":"1J","X":"1q","L":0,"M":0,"z-1l":-1,"3W":"1t","1v":"2o","H":"2d%","N":"2d%"});7.4D=C.1s("4D");7.4D.1P="86: \\"\\";";k.u.O(7.4D,{"H":"2d%","N":"2d%","1v":"2o","1p":"1J","X":"a3","z-1l":0,"4E":"9y()","2C":1});7.3X.1k(7.4D);7.S.1k(7.3X);7.6v=V;C.1d.2T(7.2q)},aj:v(R){q 9U=J(k.u.Y(7.S,"2a-M"))+J(k.u.Y(7.S,"2a-16"))+J(k.u.Y(7.S,"1v-M-H"))+J(k.u.Y(7.S,"1v-16-H")),9z=J(k.u.Y(7.S,"2a-L"))+J(k.u.Y(7.S,"2a-1u"))+J(k.u.Y(7.S,"1v-L-H"))+J(k.u.Y(7.S,"1v-1u-H"));q 1S=1R=0;k.u.O(7.I,{"H":7.I.3w,"N":7.I.3L,"L":-3k,"1p":"1J"});q 1O=k.u.1X(7.I);m("4r"==7.K.2N){1S=1j.2c((R.N-9z)/2+R.2m-(1O.N+7.Q.29)/2);1R=1j.2c((R.H-9U)/2+R.2l-1O.H/2);m(1S<R.2m+10){1S=R.2m+10}m(1R<R.2l+10){1R=R.2l+10}}m("3t"==7.K.2N){q 1W=k.u.3O(7.1N);1S=1W.1u-1j.2c((1W.1u-1W.L)/2)-1j.2c(1O.N/2);m(1S+1O.N+7.Q.29>R.N+R.2m-15){1S=R.N+R.2m-15-1O.N-7.Q.29}m(1S<R.2m+10){1S=R.2m+10}1R=1j.2c(1W.16-(1W.16-1W.M)/2-1O.H/2);m(1R+1O.H>R.H+R.2l-15){1R=R.H+R.2l-1O.H-15}m(1R<R.2l+10){1R=R.2l+10}}m("1q"==7.K.2N){1S=J(7.K.21.L+R.2m);m(J(7.K.21.1u)>0){1S=R.N+R.2m-J(7.K.21.1u)-1O.N-7.Q.29}1R=J(7.K.21.M+R.2l);m(J(7.K.21.16)>0){1R=R.H+R.2l-J(7.K.21.16)-1O.H}}m("2x"==7.K.2N){q 1W=k.u.3O(7.1N);m("3t"==7.K.21.L){1S=1W.1u-1j.2c((1W.1u-1W.L)/2)-1j.2c(1O.N/2)}T{1S=1W.L+J(7.K.21.L);m(J(7.K.21.1u)>0){1S=1W.1u-J(7.K.21.1u)-1O.N-7.Q.29}}m("3t"==7.K.21.M){1R=1j.2c(1W.16-(1W.16-1W.M)/2-1O.H/2)}T{1R=1W.M+J(7.K.21.M);m(J(7.K.21.16)>0){1R=1W.16-J(7.K.21.16)-1O.H}}m(1S+1O.N+7.Q.29>R.N+R.2m-15){1S=R.N+R.2m-15-1O.N-7.Q.29}m(1S<R.2m+10){1S=R.2m+10}m(1R+1O.H>R.H+R.2l-15){1R=R.H+R.2l-1O.H-15}m(1R<R.2l+10){1R=R.2l+10}}G{"L":1S,"M":1R}},4L:v(ah){m(7.26){7.4V();G P}m(!7.26&&7.4K){G P}7.1C=ah;q R=k.5L();q 83=k.u.2W(7.1N);k.2E(7.I,{"4Y":83.L,"4U":83.M});q 7Z={1p:"1J","X":"1q","1x":7.K.4e?0:1,"L":7.I.4Y,"M":7.I.4U,"H":"3t","N":"3t"};m(E.K.af){7.I.3w=7.I.ae;7.I.3L=7.I.29;7.7f();7.a9(R);m(7.cr){k.u.O(7.cr,{"H":7.I.3w*0.9,"L":7.I.3L-20});k.u.O(7.S,{"1p":"1J"});k.u.O(7.cr,{"H":"90%","L":7.I.3L-k.u.1X(7.cr).N-8})}}k.2E(7Z,{"H":7.I.71});q 81=7.aj(R);q ab={"1x":[(7.K.4e)?0:1,1],"L":[7.I.4Y,81.L],"M":[7.I.4U,81.M],"H":[7.I.71,7.I.3w]};1G k.3m(7.I,{2r:7.K.ao,2h:7.K.2h,44:k.2g(v(){7.5S(P);k.u.O(7.I,7Z);m(!7.K.4e){k.u.O(7.1N,{"1g":"1t"})}q f=E.30();m(1F!=f){7.1C=f.1C+1}k.u.O(7.I,{"z-1l":7.1C});7.S.1k(7.3X)},7),3V:k.2g(v(){k.u.2B(7.1r,"E-26");k.u.2B(7.I,"E-2O-26");q 6m=k.u.1X(7.I);k.u.O(7.S,{"M":k.u.2W(7.I).M,"L":k.u.2W(7.I).L,"H":6m.H,"1g":"23"});7.S.an(7.I,7.S.2v);k.u.O(7.S,{"1p":"1J","z-1l":7.1C});k.u.O(7.I,{"X":"2x","L":0,"M":0,"z-1l":2});m(k.1e.2s){k.u.O(7.3X,{"H":k.u.1X(7.S).H,"N":k.u.1X(7.S).N})}m(7.1L){q 5B=k.u.1X(7.1L);k.u.O(7.1L,{"X":"1q","z-1l":11,"1g":(k.1e.4J)?"23":"1t","L":/1u/i.3j(7.K.3Y||E.K.3Y)?6m.N-5B.N-5:5,"M":/16/i.3j(7.K.3Y||E.K.3Y)?6m.H-5B.H-5:5});m(k.1e.4J){k.u.O(7.4k,{"1g":"23","H":5B.H,"N":5B.N,"L":7.1L.5P,"M":7.1L.66,"4M-X":""+(k.u.2W(7.S).M-k.u.2W(7.1L).M+J(k.u.Y(7.I,"1v-M-H")))+"1n "+(k.u.2W(7.S).L-k.u.2W(7.1L).L+J(k.u.Y(7.I,"1v-L-H")))+"1n"})}k.1f.7K(7.S,"aa","3h")}E.6I(7.I);m(7.89){7.2w(7.I,"70",v(e){k.1f.2u(e)});7.2w(7.I,"2z",7.cf=k.3b(7.3H,7))}m(""!=7.Q.2V){7.a2(1);7.4V(7.K.4N*5E+10)}T{7.4V(0)}m(41(E.K.6J)>0){E.al()}7.4K=P;7.26=V;7.89=P},7)}).3B(ab)},3H:v(e,5w,53){m(e){k.1f.2u(e)}m(!7.26||(7.26&&7.4K)){G P}7.4K=V;53=53||P;k.1f.3R(C,"5U",E.5a);m(E.K.7M&&1F!=5w){k.1f.7K(5w.1r,"aa","2z");G P}1G k.3m(7.Q,{2r:(!7.57||53)?0:7.K.4N,2h:k.2M.6o,44:k.2g(v(){k.u.O(7.Q,{"5u-L":0})},7),3V:k.2g(v(){k.u.O(7.Q,{"1g":"1t","X":"1q","L":-a0});k.u.4x(7.I,"E-2O-26");q 1M=k.u.2W(7.I);1G k.3m(7.I,{2r:(53)?0:7.K.a1,2h:7.K.2h,44:k.2g(v(){7.S.2T(7.3X);k.u.O(7.I,{"X":"1q","z-1l":7.1C,"L":1M.L,"M":1M.M});7.I=C.1d.1k(7.I);k.u.O(7.S,{"L":-3k});m(7.1L){k.u.O(7.1L,{"M":0})}},7),3V:k.2g(v(){k.u.O(7.1N,{"1g":"23"});k.u.O(7.I,{"L":-3k});k.u.4x(7.1r,"E-26");k.u.O(7.1N,{"1g":"23"});E.6I(7.1r);7.4K=P;7.26=P;E.9Z(7.1l);m(1F!=5w){E.4L(12,5w.1l)}T{m(E.2b){E.9Y()}}7.5S()},7)}).3B({"1x":[1,7.K.4e?0:1],"H":[7.I.3w,7.I.71],"N":[7.I.3L,7.I.9W],"L":[1M.L,7.I.4Y],"M":[1M.M,7.I.4U]})},7)}).3B({"5u-L":[0,-7.Q.29||0]})},4V:v(t){t=t||0;q f=E.30();m(1F!=f){7.1C=f.1C+1;k.u.O(7.S,{"z-1l":7.1C})}E.9X(7.1l);2L(v(){k.1f.3R(C,"5U",E.5a);k.1f.2P(C,"5U",E.5a)},t)},a2:v(){1G k.3m(7.Q,{2r:7.K.4N,2h:k.2M.6o,44:k.2g(v(){k.u.O(7.Q,{"5u-L":-7.Q.29});k.u.O(7.Q,{"1g":"23","X":"a3"})},7),3V:k.2g(v(){m(k.1e.2s){k.u.O(7.3X,{"H":k.u.1X(7.S).H,"N":k.u.1X(7.S).N})}},7)}).3B({"5u-L":[-7.Q.29,0]})},6q:v(e,5k){m(e){k.1f.2u(e)}5k=5k||P;q 5l=k.u.3O(7.S);q 8k=(C.1Y&&"3s"!=C.1Y.2A())?C.1K:C.1d;q 4n=e.3U+J((1T.3P)?1T.3P:8k.2F);q 4m=e.3T+J((1T.3C)?1T.3C:8k.2G);q 3g=/3h/i.3j(e.ag);q 3D=k.u.Y(7.1L,"1g");m((!3g||"1t"!=3D)&&(4n>5l.M&&4n<5l.16)&&(4m>5l.L&&4m<5l.1u)){G}m(3g&&"1t"!=3D&&!5k){G}m(!3g&&"1t"==3D){G}q 60=(5k||3g)?[0,1]:[1,0];1G k.3m(7.1L,{2r:0.3,2h:k.2M.5h}).3B({"1x":60});G},a8:v(e){q o=e.cj||e.ck;2Q(o&&"a"!=o.2S.2A()){o=o.5b}q 7l=V;5f(o.2R){1z"6h":7.3H(12,E.77(7.3d));1w;1z"6k":7.3H(12,E.7E(7.3d));1w;1z"6r":7.3H(12);1w;7B:7l=P}m(7l){k.1f.2u(e)}G P},5S:v(4R){4R=(1F!==4R)?4R:V;m(k.u.5V(7.1r,"22")){3f{m(4R){7.1r.2C.4P=P}T{7.1r.2C.4I();7.1r.2C.4P=V}}3a(e){}}T{m(7.1r.4a.4a&&-1!=(7.1r.4a.4a.co("1I")||"").2i("cn")){3f{q 6A=7.1r.4a;2Q(6A=6A.cm){6A.B.L=(4R)?"1D":"-49"}}3a(e){}}}},a9:v(R){q a7=J(k.u.Y(7.S,"2a-M"))+J(k.u.Y(7.S,"2a-16"))+J(k.u.Y(7.S,"1v-M-H"))+J(k.u.Y(7.S,"1v-16-H")),a4=J(k.u.Y(7.S,"2a-L"))+J(k.u.Y(7.S,"2a-1u"))+J(k.u.Y(7.S,"1v-L-H"))+J(k.u.Y(7.S,"1v-1u-H"));q x=1j.a6(7.I.3w,R.H-35-a7),y=1j.a6(7.I.3L,R.N-35-a4-7.Q.29);m(x/y>7.I.5J){x=y*7.I.5J}T{m(x/y<7.I.5J){y=x/7.I.5J}}7.I.3w=1j.a5(x);7.I.3L=1j.a5(y);7.7f()},7f:v(){k.u.2B(7.I,"E-2O-26");k.u.O(7.Q,{"H":7.I.3w+((k.1e.2s&&k.1e.4Q)?(J(k.u.Y(7.I,"1v-M-H"))+J(k.u.Y(7.I,"1v-16-H"))):(-7.Q.3z-7.Q.4S-J(k.u.Y(7.Q,"1v-M-H"))-J(k.u.Y(7.Q,"1v-16-H"))))});k.u.4x(7.I,"E-2O-26");k.u.O(7.S,{"L":-3k,"1p":"1J"});k.2E(7.Q,{"29":k.u.1X(7.Q).N});k.u.O(7.S,{"1p":"2o"})}};m(k.1e.4J){E.61.28.6q=v(e,5G){m(e){k.1f.2u(e)}5G=5G||P;q 5y=k.u.3O(7.S);q 7I=(C.1Y&&"3s"!=C.1Y.2A())?C.1K:C.1d;q 4n=e.3U+J((1T.3P)?1T.3P:7I.2F);q 4m=e.3T+J((1T.3C)?1T.3C:7I.2G);q 3g=/3h/i.3j(e.ag);q 3D=k.u.Y(7.4k,"1g");m((!3g||!("1t"!=3D))&&(4n>5y.M&&4n<5y.16)&&(4m>5y.L&&4m<5y.1u)){G}m(3g&&!("1t"!=3D)&&!5G){G}m(!3g&&"1t"!=3D){G}q 60=(5G||3g)?[1,0]:[0,1];1G k.3m(7.4k,{2r:0.3,2h:k.2M.5h}).3B({"1x":60});G};3f{C.aH("aQ",P,V)}3a(e){}}k.1f.2P(C,"8X",v(){E.4c()});',62,828,'|||||||this|||||||||||||MagicTools||if||||var||||Element|function||||||style|document||MagicThumb|el|return|width|bigImg|parseInt|options|top|left|height|setStyle|false|caption|ps|cont|else|bigImageCont|true||position|getStyle|settings|||null||||right||||smallImage|MagicZoom_ua|_2c|body|browser|Event|visibility|length|window|Math|appendChild|index|bigImage|px|img|display|absolute|anchor|createElement|hidden|bottom|border|break|opacity|for|case|pup|matches|zIndex|0px|MagicZoom_getStyle|undefined|new|smallImageCont|id|block|documentElement|controlbar|pos|smallImg|_8f|src|cbA|destLeft|_8e|self|msie|arguments|_90|getSize|compatMode|smallImageSizeX||zoomPositionOffset|MagicZoom|visible|loadingCont||zoomed||prototype|fullHeight|padding|bgFader|round|100|tag|_30|bind|transition|indexOf|smallImageSizeY|popupSizeX|scrollX|scrollY|gd56f7fsgd|none|val|loader|duration|ie|re|stop|firstChild|addEvent|relative|opera|click|toLowerCase|addClass|zoom|popupSizeY|extend|scrollLeft|scrollTop|bigImageSizeY|_26|idx|title|setTimeout|Transition|zoomPosition|image|add|while|rel|tagName|removeChild|activeIndexes|innerHTML|getPosition|className|getElementsByTagName|thumbs|getFocused|_85|||||_4f||||catch|bindAsEvent|MagicZoom_addEventListener|group|_61|try|ov|mouseover|MagicZoom_createMethodReference|test|9999|bigImageSizeX|Render|_35|MagicZoom_|arr|ft|positionX|backcompat|auto|push|getItem|displayWidth|replace|div|paddingLeft|_5d|start|pageYOffset|vis|IMG|_59|exec|collapse|header|RegExp|_62|displayHeight|_3|positionY|getRect|pageXOffset|bigImageContStyleTop|remove|href|clientY|clientX|onComplete|overflow|overlap|controlbarPosition|_2d||parseFloat|_17|_16|onStart|_4e|_56|ael|MagicZoom_zooms|10000px|parentNode|obj|init|String|keepThumbnail|load|safari|_86|now|onDomReady|cbOverlay|on|eY|eX|currentStyle|_2b|custom|center|onDomReadyTimer|typeof|apply|zoomTrigger|gecko|removeClass|str|mousemove|_5e|_1a|_82|iframe|filter|_19|MagicZoom_stopEventPropagation|alt|hiderect|ie6|rendering|expand|background|captionSlideDuration|initZoom|recalculating|backCompatMode|_9e|paddingRight|len|initLeft|focus|cursor|_1b|initTop|borderLeftWidth||_67|_1c|_99|captionSrc|timer|_1f|hasCaption|dx|sd|onKey|offsetParent|_73|_7c|_49|switch|_53|linear|getGroupItems|_76|_9a|_9b|inArray|_24|eventsCache|_3b|pop|innerHeight|_48|DIV|margin|initTimer|_98|onDomReadyList|_a3|userAgent|mzextend|_97|_64|_1d|1000|wx|_a2|navigator|wy|ratio|size|getPageSize|delete|scrollWidth|continue|offsetTop|_63|clientHeight|toggleMZ|_1e|keydown|hasClass|opt|_4a|_50|MagicZoomHeader|op|Item|_4b|innerWidth|complete|defaults|offsetLeft|_3a|attachEvent|_75|offsetWidth|offsetHeight|getBoundingClientRect|_52|checkcoords|_79|camelize|prev|_77|_72|next|_6d|_96|_6a|sin|_38|toggleControlBar|close|_7d|_60|_6f|loaded|_51|font|in|span|_9f|zoomHeight|_44|color|styles|300px|_8b|domLoaded|fixCursor|backgroundFadingOpacity|_41|_1|shift|inner|completeWidth|_7a|Array|createEvent|MagicZoom_getBounds|_87|zoomTriggerDelay|ar1|safariOnLoadStarted|hoverTimer|callee|pow|mousedown|initWidth|_69|drag_mode|paddingTop||zoomWidth|getPrev|defaultView|_31|_71|_5b|_37|_25|_78|resizeCaption|_36|_20|_74|_28|_4|_9d|showrect|getComputedStyle|css|version|_57|quadIn|bigImage_always_visible|calc|preventDefault|stopPropagation|_6e|_58|_70|startTime|render|default|cancelBubble|borderTopWidth|getNext|recalculatePopupDimensions|_3e|_34|_a4|_21|fire|_3d|allowMultipleImages|onImgLoad|_8a|_9|_84|float|_33|url|_55|concat|_3c|outline|MagicZoom_extendElement|_93|_c|_94|result|_92|_e|_b|javascript|lastChild|_a|firstRun|inline|controlbarEnable|clearTimeout|mouseout|_8|_89|pageHeight|pageWidth|checkcoords_ref|loadingText|_9c|_4d|_29|_4c|initBigContainer|mousemove_ref|_32|_5|removeEventListener|MagicZoom_getEventBounds|_54|useCtrlKey|addEventListener|mouseup|MagicView_ia|_6|preventClick|backgroundFadingDuration|_7|_7f|_2|clientWidth|loadingImg|_80|_2a|controlbarButtons|MagicZoom_removeEventListener|Left|html|XMLHttpRequest|big|scrollMaxX|Right|event|styleFloat|_5f|scrollHeight|detachEvent|MagicZoom_findZooms|domready|MagicZoom_findSelectors|_39||scrollMaxY|cssFloat|bim|_40|_3f|trim|blur|_43|_2e|thumb_change|m2|_5a|_45|sim|_2f|dispatchEvent|_42|Top|_47|_46|toArray|_5c|getElementById|Bottom|loadingMsg|textAlign|xgdf7fsgd56|data|pat|charCodeAt|borderWidth|_11|_23|mask|_8d|createControlBar|align|_88|Tahoma|_12|fromCharCode|cbButtons|pointer|getFirst|getLast|preload|_83|progid|DXImageTransform|repeat|prepare|_13|_14|setOpacity|_15|_8c|_10|initHeight|setFocused|fadeOutBackground|unsetFocused|999|collapseDuration|toggleCaption|static|_a1|ceil|min|_a0|onCBClick|resizeImage|MouseEvents|_95|MagicZoom_concat|_f|fullWidth|fitToScreen|type|_91|MagicZoom_withoutFirst|adjustPosition|_22|fadeInBackground|_d|insertBefore|expandDuration|handler|Microsoft|stopZoom||_27|webkit|cubicIn|rev|_65|_6b|selectThisZoom|disableContextMenu|styleSheets|_6c|Loading|backIn|PI|onBeforeRender|execCommand|finishTime|loop|_68|cos|replaceZoom|evt|fps|1001|BackgroundImageCache||_66|_7e|initPopup|backgroundFadingColor|MagicZoomLoading|DOMContentLoaded|loadingOpacity|max|alpha|isBody|destroy|autoInit|console|getScrolls|_7b|allowKeyboard|splice|refresh|HTML|BODY||metaKey|ctrlKey|move|_18|bindDomReady|MagicZoomPup|MozUserSelect|Zoom|onselectstart|oncontextmenu|MagicZoom_stopZooms|throw|Invalid|textDecoration||fontWeight|fontSize|replaceChild|3px||fontFamily|sc|borderRightWidth|unselectable|paddingBottom|thumb|change|frameBorder|MagicZoomBigImageCont|1000000|Opacity|random|IFRAME|show|drag|mode|always|Alpha|invocation|vertical|peventClick|createTextNode|middle|moz|baseuri|_81|backgroundImage|crop|sizingMethod|AlphaImageLoader|loading|resize|contextmenu|restoreDuration|zoomDuration|dir|sort|keyCode|lef|bgfader|description|warn|popupSizey|no|collapseEvent|nodeType|text|family|currentTarget|srcElement|mozilla|previousSibling|mmObjCont|getAttribute|weight|completeHeight||base64|gif|container|ig|R0lGODlhAQABAIAAACqk1AAAACH5BAEAAAAALAAAAAABAAEAAAICRAEAOw|amp|line|gt|lt|Next|Close|call|viewHeight|viewWidth|getTime|returnValue|initEvent|m1|fireEvent|eventType|createEventObject|Date|string|Gecko|AppleWebKit|ActiveXObject|ie7|KHTML|mobilesafari|Safari|Mobile|Apple|match|toUpperCase|Width|state|disabled|doScroll|readyState|curFrame|setInterval|Previous|rtl|000000|clearInterval|elastic|backOut|clientTop|hasLayout|number|clientLeft|do|618|cubicOut|quadOut|update'.split('|'),0,{}))


